當前位置: 首頁>>代碼示例>>Java>>正文


Java CTAltChunk類代碼示例

本文整理匯總了Java中org.docx4j.wml.CTAltChunk的典型用法代碼示例。如果您正苦於以下問題:Java CTAltChunk類的具體用法?Java CTAltChunk怎麽用?Java CTAltChunk使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


CTAltChunk類屬於org.docx4j.wml包,在下文中一共展示了CTAltChunk類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: insertDocx

import org.docx4j.wml.CTAltChunk; //導入依賴的package包/類
private void insertDocx(MainDocumentPart main, byte[] bytes, int chunkId) {  
    try {  
        AlternativeFormatInputPart afiPart = new AlternativeFormatInputPart(new PartName("/part" + chunkId + ".docx"));  
        // afiPart.setContentType(new ContentType(CONTENT_TYPE));
        afiPart.setContentType(new ContentType(ContentTypes.APPLICATION_XML));
        afiPart.setBinaryData(bytes);  
        Relationship altChunkRel = main.addTargetPart(afiPart);  
  
        CTAltChunk chunk = Context.getWmlObjectFactory().createCTAltChunk();  
        chunk.setId(altChunkRel.getId());  
  
        main.addObject(chunk);  
    } catch (Exception e) {  
        e.printStackTrace();  
    }  
}
 
開發者ID:vindell,項目名稱:docx4j-template,代碼行數:17,代碼來源:Docx4jUtils.java

示例2: insertDocx

import org.docx4j.wml.CTAltChunk; //導入依賴的package包/類
private static void insertDocx(MainDocumentPart main, byte[] bytes, int chunkId) {  
    try {  
        AlternativeFormatInputPart afiPart = new AlternativeFormatInputPart(new PartName("/part" + chunkId + ".docx"));  
        afiPart.setContentType(new ContentType(CONTENT_TYPE));  
        afiPart.setBinaryData(bytes);  
        Relationship altChunkRel = main.addTargetPart(afiPart);  
  
        CTAltChunk chunk = Context.getWmlObjectFactory().createCTAltChunk();  
        chunk.setId(altChunkRel.getId());  
  
        main.addObject(chunk);  
    } catch (Exception e) {  
        e.printStackTrace();  
    }  
}
 
開發者ID:vindell,項目名稱:docx4j-template,代碼行數:16,代碼來源:WMLPackageUtils.java

示例3: insertDocx

import org.docx4j.wml.CTAltChunk; //導入依賴的package包/類
private static void insertDocx(MainDocumentPart main, byte[] bytes, int chunkId) {
    try {
        AlternativeFormatInputPart afiPart = new AlternativeFormatInputPart(new PartName("/part" + chunkId + ".docx"));
        afiPart.setContentType(new ContentType(CONTENT_TYPE));
        afiPart.setBinaryData(bytes);
        Relationship altChunkRel = main.addTargetPart(afiPart);

        CTAltChunk chunk = Context.getWmlObjectFactory().createCTAltChunk();
        chunk.setId(altChunkRel.getId());

        main.addObject(chunk);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
 
開發者ID:cornerpirate,項目名稱:ReportCompilerSource,代碼行數:16,代碼來源:DocxService.java

示例4: mergeUsingCTAltChunk

import org.docx4j.wml.CTAltChunk; //導入依賴的package包/類
/**
 * Merge two docx files using an approach that is based on CTAltChunk.
 * 
 * @param separatorTexts
 * @param topFile
 * @param bottomFile
 * @param outputFile
 * @return
 * @throws Exception
 */
protected static File mergeUsingCTAltChunk(
		WordprocessingMLPackage topPackage, File bottomFile,
		File outputFile) throws Exception {

	/*
	 * Based on
	 * https://stackoverflow.com/questions/2494549/is-there-any-java-library
	 * -maybe-poi-which-allows-to-merge-docx-files
	 * 
	 */

	FileInputStream bottomIs = new FileInputStream(bottomFile);

	MainDocumentPart topMainPart = topPackage.getMainDocumentPart();

	// Get binary representation of bottom file
	byte[] bottomAsBytes = IOUtils.toByteArray(bottomIs);

	/*
	 * Determine a suitable name for the new part, one that is not already
	 * taken (in case of multiple merges).
	 */
	Parts docParts = topPackage.getParts();
	Set<PartName> docPartsNames = docParts.getParts().keySet();
	Set<String> plainPartNames = new HashSet<String>();
	for (PartName pn : docPartsNames) {
		plainPartNames.add(pn.getName());
	}

	String partName = null;
	int index = 0;
	do {
		partName = "/part" + index + ".docx";
		index++;
	} while (plainPartNames.contains(partName));

	/*
	 * Now add the bottom file as another part to the top package, and add a
	 * CTAltChunk to the main document of the top package that references
	 * this new part.
	 */

	AlternativeFormatInputPart afiPart = new AlternativeFormatInputPart(
			new PartName(partName));
	afiPart.setContentType(new ContentType(CONTENT_TYPE));
	afiPart.setBinaryData(bottomAsBytes);
	Relationship altChunkRel = topMainPart.addTargetPart(afiPart);

	CTAltChunk chunk = Context.getWmlObjectFactory().createCTAltChunk();
	chunk.setId(altChunkRel.getId());

	topMainPart.addObject(chunk);

	topMainPart.convertAltChunks();

	/*
	 * Finally, save the modified top package to the output file and return
	 * that file.
	 */
	topPackage.save(outputFile);

	return outputFile;
}
 
開發者ID:ShapeChange,項目名稱:ShapeChange,代碼行數:74,代碼來源:DocxUtil.java


注:本文中的org.docx4j.wml.CTAltChunk類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。