Qt's Active Qt
モジュールを介してWord文書を生成しています。
ドキュメントに書き込み、その書き込みの "スタイル" (太字、イタリック、両端揃えなど) を指定し、ドキュメントのさまざまな部分をクエリすることができます。
現在、画像を表示してページの中央に配置しようとしています。
画像を挿入する場合:
QAxObject word( "Word.Application" );
QAxObject* activeDocument = word.querySubObject("ActiveDocument");
QAxObject* activeWindow = activeDocument->querySubObject( "ActiveWindow" );
QAxObject* selection = activeWindow->querySubObject( "Selection" );
selection->dynamicCall( "Collapse(int)", 0 );
const int pos = selection->dynamicCall( "End" ).toInt();
QAxObject* shapes = activeDocument->querySubObject( "Shapes" );
QAxObject* shape = shapes->dynamicCall( "AddPicture(QString,bool,bool,float,float,float,float)",
picPath,
true, true );
これにより、ページの左側に画像が挿入されます。ではWord
、画像を挿入して選択し、その配置 (私の場合は中央揃え) を指定できますが、コードでこれを行うことはできません。
写真のアンカーを中央に設定しようとしましたが、ページの左側に表示されます。
shape->querySubObject( "Anchor" )->querySubObject( "ParagraphFormat" )->setProperty( "Alignment", 1); // 1 == wdAlignParagraphCenter
と:
shape->querySubObject( "Anchor" )->dynamicCall("InsertAlignmentTab(int)",1); // 1 == center
また、画像が挿入された作成済みのドキュメントを開くときに、画像の 1 つを選択すると、中央に配置できないことに注意してください。一方、 [挿入] メニューを使用すると、画像を選択して中央に配置できます。
挿入した画像を中央に配置する方法はありWord
ますか?