[ADOS] ADOS Developer's Site - XML Stadium
ADOS Company slogan - XML Total Solution

Pluxis クッキング

たくさんの社員、煩雑な名刺作成管理をSVG変換で効率良く


ユーザ要求

jp.jpg
en.jpg

準備: Pluxisに、Excelシート→SVG の処理を組み込む

SVG(Scalable Vector Graphics)はXML標準なので、その変換処理にはPluxisが大活躍します。

社員情報の構造をXML構造にマッピングする

map.jpg

XML構造の設定には、簡単なXMLファイルを用意すればOK

<?xml version="1.0" standalone="yes"?>
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<person>
		<jp>
			<LastName>幸田</LastName>
			<FirstName>露伴</FirstName>
			<hat1>営業部</hat1>
			<hat2>営業2課</hat2>
			<hat3>主任</hat3>
		</jp>
		<en>
			<LastName>Kouda</LastName>
			<FirstName>Rohan</FirstName>
			<hat1>Sales Dept.</hat1>
			<hat2>Sales Unit 2</hat2>
			<hat3>Chief</hat3>
		</en>
	</person>
</list>

SVG変換には、XSLTファイルを用意する

  1. Adobe イラストレータなど、SVGを出力できるグラフィックツールで、名刺のテンプレートを用意し、SVGファイルを保存する
  2. XSLTファイルにSVGファイルを差し込み編集する

card.xsl

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" 
   "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [
       (中略:必要なENTITY宣言など)
]>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>

<xsl:template match="list">
<svg 
           (中略)
	 xml:space="preserve">

       (中略)

</svg>
</xsl:template>
</xsl:stylesheet>

社員情報を穴埋め(スロットフィリング)したい箇所には、xsl:value-of でXPath形式の情報参照を記述します。

<xsl:value-of select="person/jp/LastName"/> 
<xsl:value-of select="person/jp/FirstName"/>

これで、名刺の固定部分(版下となるグラフィック)部分と、社員情報の可変部分とを合成する準備が整いました。

準備: 社員情報のリストを、普通のExcelシートとして用意する

list.jpg

行選択した個人情報を、XMLマッピング用のシートに転記する、数行のVBAを組み込みます。

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)    
   Dim s1, s2, j
    
   Set s1 = Worksheets("List")
   Set s2 = Worksheets("Map")         

   For j = 1 To 10
       s2.Cells(3, j).Value = s1.Cells(Target.Row, j).Value
   Next
End Sub

(この原稿は書き掛けです)


トップ   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Copyright 2005-2008. ADOS Co., Ltd. All Rights Reserved.