PDF格納先の判別
生成されたPDFファイルの保存先(IE限定)
IEではPDFは生成されるとデフォルトでは一時的にTemporary Internet Filesに格納されますが、
その配下は隠しファイル・システムファイルとなっていて設定を変えないと
なかなかみることができないという現状があります。
保存先はOSによって違います
現状では以下のようにキャプチャ時にどこに保存されているのかを
OSによって判別するようなものがあれば良くて、これに関しては
SeleniumのPlatformクラスのgetCurrentを使うと簡単に取れます。
public InternetExplorerTempFileCapture() { switch (Platform.getCurrent()) { case WIN8 : this.setTempFolder(System.getProperty("user.home")+"/AppData/Local/Microsoft/Windows/Temporary Internet Files/Low/Content.IE5/"); break; case VISTA : this.setTempFolder(System.getProperty("user.home")+"/AppData/Local/Microsoft/Windows/Temporary Internet Files/Content.IE5/"); break; case XP : this.setTempFolder(System.getProperty("user.home")+"/Local Settings/Temporary Internet Files/Content.IE5/"); break; default: throw new UnsupportedOperationException(); } }
PDFのキャプチャ
これに関しては以前の記事にも書きましたが、
隠されていようがそうであるまいが基本的にキャプチャできます。
InternetExplorerの一時フォルダから出力されたPDFを取得する - 遅れてやってきたプログラマーの小言