- PR -

PDFファイル内容の文字の表示が出来るように方法

1
投稿者投稿内容
未記入
会議室デビュー日: 2005/10/20
投稿数: 2
投稿日時: 2005-10-20 17:24
すみませんが、
●質問;PDF内容で英語文字書いた("A.PDF")は出力しましたけど、 
    日本語PDF内容で("B.PDF")のみは出力しませんでした
    日本語文字が表示になる方法を教えてください。

●ソース PROGRAM

import com.adobe.acrobat.*;
import com.adobe.acrobat.sidecar.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;

public class testacrobat extends JFrame {
private MyCanvas meinCanvas = new MyCanvas();
private Image meinImage;
private int x = 400;
private int y = 400;
private int page = 0;
private PDFDocument doc;
private FloatPoint cropBoxSize;

public testacrobat() {
try {
doc = new PDFDocument(new File("B.pdf"));
cropBoxSize = doc.getPageSize(page);
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
testacrobat testacrobat1 = new testacrobat();
}

private Image createImageFromPDF(Component anyComponent, int width,
int height) {
try {
float hScale = (float) ((width) / cropBoxSize.x);
float vScale = (float) ((height) / cropBoxSize.y);
float scale = (float) Math.max(hScale, vScale);
AffineTransform transform = new AffineTransform(hScale, 0, 0,
vScale, 0, 0);
int h = (int) (cropBoxSize.y * vScale);
int w = (int) (cropBoxSize.x * hScale);
Image img = anyComponent.createImage(w, h);
-----> doc.drawPage(page, img, transform, null, anyComponent);

return img;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
private void jbInit() throws Exception {
this.show();
setSize(410, 410);
this.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentResized(ComponentEvent e) {
this_componentResized(e);
}
});
meinImage = createImageFromPDF(this, x, y);

this.getContentPane().add(meinCanvas, 0);

WindowAdapter adapter = new WindowAdapter() {
public void windowClosing(WindowEvent event) {
System.exit(0);
}
};

this.addWindowListener(adapter);
this.pack();
}

void this_componentResized(ComponentEvent e) {
y = e.getComponent().getHeight();
x = e.getComponent().getWidth();
meinImage = createImageFromPDF(this, x, y);
}

public class MyCanvas extends Canvas {
public Dimension getMinimumSize() {
return new Dimension(100, 100);
}

public Dimension getPreferredSize() {
return new Dimension(x, y);
}

public void paint(Graphics g) {
g.drawImage(meinImage, 0, 0, x, y, new Color(0, 0, 0), null);
}
}
}


[ メッセージ編集済み 編集者: 未記入 編集日時 2005-10-21 15:54 ]

[ メッセージ編集済み 編集者: 未記入 編集日時 2005-10-21 18:02 ]
1

スキルアップ/キャリアアップ(JOB@IT)