Skip to main content
Inspiring
January 17, 2023
Answered

変数のデータセット名をCSVから読み込む方法

  • January 17, 2023
  • 2 replies
  • 4086 views

表題のとおりなのですが、変数のデータセット名をCSVから取り込む方法はあるのでしょうか?

変数用のCSVの読み込み自体は問題なくできるのですが、

データセット1,データセット2,データセット3.......と表示されるため、

各データセットがいったい何のデータの集まりなのか名前を見ても判別できません。

調べても情報が出てこないため、いつも読み込んだ後に手動で変更していたのですが、

ふと変数名を決められないなんて事があるのか?と疑問に思い質問いたしました。

 

やり方を知っているよ!という方、もしくはできないという事を知っている方、いらっしゃいましたらご教授頂けないでしょうか。

 

 

This topic has been closed for replies.
Correct answer kawabata_work

データセットから書き出したやつをベースにしてExcelとかから吐き出せる様にすると楽だと思います。


ありがとうございます!

「変数ライブラリを保存」xmlを書き出せました。

 

今回ご指摘いただくまで、スクリプトを使うことを失念していたので、

改めて、使用したい機能をもつスクリプトがどこかで配布されていない調べてみたところ、

完全に希望にマッチするものが見つかりました。

試してみたところ、オブジェクト名と列名で自動でバインドを行うことができ、

データセット名も任意の列から取り込むことができました。

 

お礼と、他の人への参考に、今回見つけたスクリプトに関するページのリンクを張っておきます!

 

スクリプトを紹介していた海外のAdobeフォーラムのページ

https://community.adobe.com/t5/illustrator-discussions/fetch-data-set-name-from-file/td-p/10853192?profile.language=en

 

スクリプトの使用方法を解説を掲載したWebサイト

https://www.hypertransitory.com/blog/2015/04/26/illustrator-variable-data/

2 replies

Ten A
Community Expert
Community Expert
January 17, 2023

あと、XMLなら名前つけられます。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
	<!ENTITY ns_flows "http://ns.adobe.com/Flows/1.0/">
	<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
	<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
	<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
	<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
	<!ENTITY ns_flows "http://ns.adobe.com/Flows/1.0/">
	<!ENTITY ns_svg "http://www.w3.org/2000/svg">
	<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
	<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
	<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
	<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
]>
<svg version="1.1"
	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
	 x="0px" y="0px" width="0px" height="0px" viewBox="0 0 0 0" style="overflow:visible;" xml:space="preserve">
<variableSets  xmlns="&ns_vars;">
	<variableSet  locked="none" varSetName="binding1">
		<variables>
			<variable  trait="textcontent" varName="item"></variable>
			<variable  trait="textcontent" varName="price"></variable>
		</variables>
		<v:sampleDataSets  xmlns="&ns_custom;" xmlns:v="&ns_vars;">
			<v:sampleDataSet  dataSetName="test1">
				<item>
					<p>アイテム1</p>
				</item>
				<price>
					<p>2,200</p>
				</price>
			</v:sampleDataSet>
			<v:sampleDataSet  dataSetName="test2">
				<item>
					<p>アイテム2</p>
				</item>
				<price>
					<p>1,100</p>
				</price>

 

この様にdataSetNameプロパティがありますから…

Inspiring
January 18, 2023

おお・・・XMLは触ったことがないのですが、書いていただいたコード見る限り調べたらなんとか理解できそうなのでこの機会に使えるようになってみます!

Ten A
Community Expert
Community Expert
January 18, 2023

データセットから書き出したやつをベースにしてExcelとかから吐き出せる様にすると楽だと思います。

Ten A
Community Expert
Community Expert
January 17, 2023

それは普通の手段ではどうにもなりませんねぇ…

スクリプトなら

app.activeDocument.dataSets[0].name="hoge"

って、感じで名前を変えられるので、csv読み込んだ時にスクリプトで書き換えるとかは出来ます。

Inspiring
January 18, 2023

このスクリプトなら自作できそうです!ありがとうございます!