Feeds:
文章
留言

Archive for 2014 年 04 月

import static java.lang.System.out;
import java.lang.reflect.Field;

public class Test {
    publicstaticvoid main(String[] args) {
        for (final Field field :Double.class.getDeclaredFields()){
           try {
                if(field.getName().equals("BYTES")){
                    out.println(field.get(null)); // Double = 8 bytes
                }
           }catch (IllegalAccessException illegalAccess){
                out.println("ERROR: Unable to reflect on field \"BYTES\"");
           }
        }
    }
}

參考資料
[1]http://www.javacodegeeks.com/2014/04/programmatic-access-to-sizes-of-java-primitive-types.html

Read Full Post »

QVodPlayer for Chrome

Windows 7 安裝了最新版 Qvod Player, 可是只有 IE 的 ActiveX 生效, NPAPI (Chrome/Firefox)卻沒有反應,找了另一台對照發現少了如下的 Registry, 補上就正常了

[HKEY_LOCAL_MACHINE\SOFTWARE\MozillaPlugins\@qvod.com/QvodInsert]
“Description"="QvodInsert 5.0 Plugin"
“Path"="C:\\Program Files (x86)\\QvodPlayer\\npQvodInsert.dll"
“ProductName"="QvodInsert 5.0 Plugin"
“Vendor"="QVOD, Inc."
“Version"="5.0.81″
[HKEY_LOCAL_MACHINE\SOFTWARE\MozillaPlugins\@qvod.com/QvodInsert\MimeTypes]
[HKEY_LOCAL_MACHINE\SOFTWARE\MozillaPlugins\@qvod.com/QvodInsert\MimeTypes\application/qvod-plugin]
“Description"="QvodInsert"

Read Full Post »

[Groovy] PDF to JPG

TTR PDF To JPG 是一套簡單但好用的工具,可將含中文的PDF正確的轉換成圖(JPG,BMP,TIF,PNG,GIF),  而且提供 GUI, 其底層是透過 jMuPDF 這套優異的 PDF Library, jMuPDF 又是以 JNI 封裝 MuPDF C Library, 效能相當不錯。

如果你想要一個命令列腳本 (個人偏好),其實可用 Groovy 來寫一個簡易腳本達成 TTR PDF to JPG 的轉檔效果

測試環境

Groovy 2.2.1

Windows XP

目錄結構

– jmupdf32.dll

– jmupdf64.dll

– jmupdf.jar

– pdf2jpg.groovy ; 主程式

 

// pdf2jpg.groovy

ZOOM, ROTATION, IMAGE_FORMAT 可依需要自行修改

/**
 * PDF to JPG
 *
 * @author Chui-Wen Chiu
 * @date 2014-04-15
 */
import com.jmupdf.enums.ImageType;
import com.jmupdf.page.Page;
import com.jmupdf.page.PageRenderer;
import com.jmupdf.pdf.PdfDocument;
import javax.imageio.ImageIO;

def static main(args){
    def fn = args[0].toLowerCase()   
    def file = new File(fn)
    if(!file.exists()){
        println("file not found")
        return
    }
    
    def pdfDoc = new PdfDocument(fn)
    if (pdfDoc.getHandle() < 0) {
        println("open pdf fail")
        return
    }
    def IMAGE_FORMAT = "JPG" // PNG, GIF, BMP,
    def folder = file.getParent()
    def org_fname = file.getName()
    def total = pdfDoc.getPageCount()
    def pagr, fname
    def ZOOM = 1.0F // 1~10
    def ROTATION = 0 // 0~360        
    for(pg = 1; pg<=total; pg+=1){
        printf("\r%d/%d", pg, total)
        page = pdfDoc.getPage(pg)
        pagr = new PageRenderer(page, ZOOM, ROTATION, ImageType.IMAGE_TYPE_RGB)
        pagr.setAntiAliasLevel(10)
        pagr.setGamma(1.0F)
        pagr.render(true)   
        
        fname = new File(folder + "\\" + org_fname.replace(".pdf", sprintf("-%04d.jpg", pg)))        
        ImageIO.write(pagr.getImage(), IMAGE_FORMAT, fname)
        
    }
    printf("\nFinish\n")
}

 

使用範例

groovy -cp ./jmupdf.jar pdf2jpg.groovy test.pdf

 

完整程式下載

 

 

Read Full Post »

« Newer Posts