jvSetString(文字型情報設定)

各種のプロパティを設定します。

[構文]
 
Function jvSetString(ByVal jid As Long, ByVal mode As Long, ByVal sval As String) As Long
 
C言語
int jvSetString(int jid, int mode, char *sval);
 
JAVA
int jvSetString(int jid, int mode, String sval);
 
Delphi
Function jvSetString(jid, mode: Longint; sval: PAnsiChar): Longint;
 

設定項目

内容

jid

jvCreateで取得したジョブID

mode

プロパティの種類(設定値参照)

sval

プロパティの設定値(設定値参照)

 
リターンコード
 

定数

内容

 

0

正常終了

JV_ERR_JOBID

-3

ジョブ識別番号エラー

JV_ERR_PARAMETER

-2

パラメータエラー

JV_ERR_FONTEMBED_FILE

-124

 フォントが埋め込めない

 
[設定値]
 
mode には次の値を設定します。
 

定数

内容

JV_FORM_PATH_NAME

1

フォームファイル検索パス(256バイト以下)

JV_IMAGE_PATH_NAME

2

イメージファイル検索パス(256バイト以下)

JV_REPLACE_CHAR

3

数値フィールドオーバーフロー時の代替文字

JV_GRID_SEPARATOR

4

グリッドフィールドデータの区切り記号

JV_RDF_KEY1 〜 JV_RDF_KEY5

11〜15

RDF形式データのキー(32バイト以下)

JV_PDF_BOOKMARK

19

Adobe PDF形式データのブックマーク

JV_PDF_OWNER_PASSWORD

20

AdobePDF形式データのオーナーパスワード(20バイト以下)

JV_PDF_USER_PASSWORD

21

AdobePDF形式データのユーザーパスワード(20バイト以下)

JV_PDF_AUTHOR

22

AdobePDF形式データの作成者(256バイト以下)

JV_PDF_CREATOR

23

AdobePDF形式データのアプリケーション(256バイト以下)

JV_PDF_TITLE

24

AdobePDF形式データのタイトル(256バイト以下)

JV_PDF_SUBJECT

25

AdobePDF形式データのサブタイトル(256バイト以下)

JV_PDF_KEYWORD

26

AdobePDF形式データのキーワード(256バイト以下)

JV_PDF_FONTEMBED

29

AdobePDF形式データに埋め込むフォント名

JV_GAIJI_FILE

31

ジャイブレポート外字ファイル名

JV_DOCUMENT_DATATYPE

34

プリントデータ型

JV_TEMP_PATH_NAME

51

XPS形式データの一時ファイル用ディレクトリ

JV_XPS_DRIVER_NAME

52

XPS形式データのプリンタ名

JV_OUTFILE_NAME

53

帳票のファイル名

JV_ERA_NAME

54

元号名と情報の指定

JV_SURROGATEPAIR_FONT

55

サロゲートペアで使用する代替フォントを指定

 
[解説]
 
jvSetStringは文字列を指定するファンクションです。数値を指定する場合にはjvSetLongを使います。
また、文字列をShift-JISではなく、UNICODEやサロゲートペアの文字で指定する場合には、jvSetStringWを使います。
 
フォームファイル検索パス(JV_FORM_PATH_NAME)
フォームファイルの検索パスを指定します。ここで指定されたパスは優先順位が最も高く、最初に検索されます。
 
イメージファイル検索パス(JV_IMAGE_PATH_NAME)
イメージファイルの検索パスを指定します。ここで指定されたパスは優先順位が最も高く、最初に検索されます。フォームに貼り付いている固定イメージ、jvDrawImagejvSetFieldImage のイメージファイルに対して有効です。
 
数値フィールドオーバーフロー制御(JV_REPLACE_CHAR)
jvSetFieldTextjvSetFieldGrid でオーバーフローが発生した時の代替文字を指定します。
ここでは、数値型編集子を持つフィールドの代替文字を設定します。文字型編集子のオーバーフローは、jvSetLong で設定します。オーバーフローが発生した時に代替文字が設定されていないと、フィールドには何も表示されません。代替文字の設定を行っても、オーバーフローが発生した時は、ユーザーにオーバーフローを知らせるためオーバーフローエラーが返ります。
 
グリッドフィールドデータの区切り記号(JV_GRID_SEPARATOR)
グリッドフィールドの列データを区切る区切り記号を指定します。指定できる記号は、タブコード(chr(9))、スペース、カンマ、コロン、セミコロンの5種類です。デフォルトはカンマです。
 
RDF形式データのキー(JV_RDF_KEY1 〜 JV_RDF_KEY5)
RDF形式データにキーをつけます。キーは、説明やタイトルなどに利用できます。ここでつけたキーは、プレビューコントロールの Key プロパティを使って参照することができます。キーは、1から5までつけることができます。キーはjvCreatの出力先デバイスが「JV_RDF」の場合のみ使用できます。
 
Adobe PDF形式データのブックマーク(JV_PDF_BOOKMARK)
Adobe PDF形式データにブックマーク(しおり)をつけます。ブックマークは、設定したページのみにつきます。 全ページにつける場合は、各ページ毎にブックマークをつけます。ブックマークをUNICODEでつける場合は、jvSetStringW を使います。ブックマークはjvCreatの出力先デバイスが「JV_PDF」の場合のみ使用できます。
 
Adobe PDF形式データの設定(20〜26)
Adobe PDF形式データの各種の情報を設定します。情報は、jvStartDoc の前で取得します。
ユーザーパスワードを設定すると、利用時にユーザーパスワードが必要となります。
 
Adobe PDF形式データに埋め込むフォント名(JV_PDF_FONTEMBED)
Adobe PDF形式データの中にフォントを埋め込む時に使います。埋め込むことができるフォントは、True Typeフォントのみです。 指定しなかったフォントは、埋め込まれません。描画に使用するすべてのフォントを埋め込む場合は、 * を指定します。
指定したフォントファイルが、作成する環境にない場合には、「JV_ERR_FONTEMBED_FILE」が発生します。指定したフォントがTrue Typeフォント以外の場合にも、同じエラーが発生します。エラーの原因となったフォント名は、jvGetString で取得します。  
Adobe PDF形式データのフォント埋め込み
Adobe PDF形式データのセキュリティ
   
ジャイブレポート外字ファイル名(JV_GAIJI_FILE)
ジャイブレポート外字ファイルを使う時に使います。外字ファイル名はフルパスで設定します。ジャイブレポート外字ファイルはレポートエディタで作成します。jvStartDocの前で設定します。
外字の描画
    
プリントデータ型(JV_DOCUMENT_DATATYPE)
プリントデータ型は、コントロールパネルのプリンターのプロパティ詳細設定画面にあるプリントデータ型プロパティをアプリケーションから設定するための機能です。プリントデータ型は、コントロールパネルのプリンターのプロパティ詳細設定画面から設定することもできます。指定可能なプリントデータ形式は、jvGetPrinterStringで取得することができます。コントロールパネルのプリンターのプロパティ詳細画面から取得することもできます。取得したデータ型のみ有効です。
jvSetStringで設定したプリントデータ型は、直後に印刷するドキュメントに対してのみ有効です。アプリケーションが終了しても有効となるように永久登録する場合には jvSetPrinterString関数を使用します。
RAW形式にする場合は"RAW"を指定します。EMF形式にする場合は"NT EMF 1.006"などを指定します。
イメージや2次元バーコード等が正しく印刷されない場合、RAW形式にすることによって現象が改善されることがあります。
jvStartDocの前に設定します。
 
XPS形式データの一時ファイル用ディレクトリ(JV_TEMP_PATH_NAME)
XPS形式で帳票を出力する時の一時ファイル用ディレクトリを設定します。jvCreatをコールした直後に設定します。何も指定しない場合には、Windowsの一時ファイル用ディレクトリが使われます。
 
XPS形式データのプリンタ名(JV_XPS_DRIVER_NAME)
帳票をXPS形式で作成する時には、XPSプリンタが必要です。通常、OSをインストールすると「Microsoft XPS Document Writer」という名前のXPSプリンタがインストールされます。このプリンタが、この名称で実行環境にある場合には、jvSetStringでプリンタ名を設定する必要はありません。このプリンタ名を変更した場合や、別のものを使用する場合には、jvCreatをコールした直後に、jvSetStringでプリンタ名を設定します。
 
帳票のファイル名(JV_OUTFILE_NAME)
メモリ上に作成されている帳票をファイルに保存する時のファイル名を設定します。jvCreateの出力ファイル名で設定したファイル名を変更する場合に使用します。
出力先がJPEG、PNG、BMPの場合のみ、jvEndPageの直後に使用できます。 
   
元号名と情報の指定(JV_ERA_NAME)
和暦の元号の基本情報を指定します。ここで設定された元号は、日付型編集子を持つフィールドに使われます。
何も設定されていない場合には、「令和、平成、昭和、大正、明治」のみ自動で表示されます。
元号の基本情報は「開始年月日、ローマ字略称、漢字略称、元号」の順番で、それぞれの値を指定します。
情報と情報の間は、半角のコロン(:)を使います。
最大3つまで設定しておくことができます。※明治以前の元号を設定することはできません。
 
例) 2099年1月1日から元号が「永宝」になった場合
jvSetString(pid,JV_ERA_NAME,"20990101:E:永:永宝")
 
サロゲートペアで使用する代替フォントを指定(JV_SURROGATEPAIR_FONT)
サロゲートペアで使用する代替フォントを指定します。
 
例) MS 明朝の代替フォントをSimSun-ExtBに設定し、その他のフォントの代替フォントをMingLiU-ExtBに設定する
ret = jvSetString(pid, JV_SURROGATEPAIR_FONT, "MS 明朝,SimSun-ExtB,*,MingLiU-ExtB")
 
[コーディング例]
 
Dim jid&, ret&
jid = jvCreate(JV_PRINTER, form1.hWnd, Printer.hDC, 0, 0, 0, "")
ret = jvSetString(jid, JV_PDF_OWNER_PASSWORD, "owner")
ret = jvSetString(jid, JV_PDF_USER_PASSWORD, "user")
ret = jvSetString(jid, JV_PDF_AUTHOR, "ジャイブコンピュータ")
ret = jvSetString(jid, JV_PDF_CREATOR, "確定申告書印刷プログラム")
ret = jvSetString(jid, JV_DOCUMENT_DATATYPE,"RAW")
 
ret = jvStartDoc(jid, "販売実績", "")
 
ret = jvSetString(jid, JV_IMAGE_PATH_NAME,"c:\temp")
ret = jvSetString(jid, JV_REPLACE_CHAR, "*")
ret = jvSetString(jid, JV_GRID_SEPARATOR, ",")
ret = jvSetString(jid, JV_RDF_KEY1, "販売実績6月分")
ret = jvSetString(jid, JV_RDF_KEY2, "名古屋支店")
ret = jvSetString(jid, JV_PDF_BOOKMARK, "納品書")
ret = jvSetString(jid, JV_PDF_FONTEMBED, "MS 明朝")
ret = jvSetString(jid, JV_PDF_FONTEMBED, "*")
|
ret = jvEndPage(jid)
ret = jvEndDoc(jid)
ret = jvClose(jid)