Thanks for looking into this. If you can figure out how to wrap this into
an easy-to-use class, certainly submit a patch on bugzilla to get this
added to the baseline. I'd be happy to help you get this integrated.
On May 18, 2016 3:55 AM, "Алексей Ушаровский" <[email protected]> wrote:

>  I guess, i found something by reading sources of Apache POI library!
>
> QName ALTCHUNK$58 =  new QName ( "
> http://schemas.openxmlformats.org/wordprocessingml/2006/main"; ,
> "altChunk" ) ;
> QName ID$2 =  new QName ( "
> http://schemas.openxmlformats.org/officeDocument/2006/relationships"; ,
> "id" ) ;
>
> CTDocument1 ctDoc = doc. getDocument ( ) ;
> CTBodyImpl b =  ( CTBodyImpl ) ctDoc. getBody ( ) ;
> XmlComplexContentImpl ac =  ( XmlComplexContentImpl ) b. get_store ( ) .
> add_element_user ( ALTCHUNK$58 ) ;
>
> org. apache . xmlbeans . SimpleValue target = ac. get_store ( ) .
> add_attribute_user ( ID$2 ) ;
> target. setStringValue ( id ) ;
>
> This code is creating correct altChank element in the body of docx
> document. Now I'm thinking, how to put another docx inside this one with
> correct content type an relation object.
> How I understand, this way is usful for many different low level
> modifications of OOXML.
>
> >Вторник, 17 мая 2016, 22:43 +03:00 от Алексей Ушаровский <[email protected]
> >:
> >
> >
> >Great thanks for explaining your experience. I'm only beginning to work
> with office document in Java and now searching for good library for my
> task. It's very interesting to read what you've written.
> >Have you ever work with docx4j library?
> >--
> >Отправлено из Mail.Ru для Android вторник, 17 мая 2016г., 21:20 +03:00 от
> "Javen O'Neal" <  [email protected] > :
> >
> >>I haven't worked with POI's XWPF package yet, so your guess is better
> than
> >>mine.
> >>
> >>However, I would assume that POI doesn't support document concatenating
> and
> >>that people have written their own code to define how they want to
> combine
> >>the documents. For example, how do you combine two documents with
> different
> >>headers and footers, different style themes, different XML namespaces,
> >>different VBA macros, etc? How do you resolve collisions of named fields?
> >>Do you start the second document on the last page of the first document
> or
> >>on a new page? How do you handle different page layouts, margins, and
> >>printer settings? Combining bibliographies?
> >>
> >>It might be possible to write a function that indisputably combines two
> >>very simple documents, but it'd be tricky to implement something that
> >>satisfies everyone's needs that handles complex documents.
> >>
> >>If all your after is merging the paragraphs, then you could for-loop over
> >>the paragraphs and copy them into the first document, creating a new page
> >>before you start copying if that's the behavior you want. If you control
> >>the format of the files that will be merged (say documents are rich text
> >>plus pictures, text boxes, and tables), you might be able to get away
> with
> >>this. If you don't have control, this would take a lot of effort with
> POI.
> >>
> >>If you're just after the text content, look at XWPFWordExtractor
> >>
> http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/extractor/XWPFWordExtractor.java?view=markup
> >>
> >>If you're willing to embed a document rather than joining a document, you
> >>could use UpdateEmbeddedDoc
> >>
> http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/UpdateEmbeddedDoc.java?view=markup
> >>
> >>For non-POI solutions:
> >>Look at what LibreOffice/OpenOffice do, both in application behavior and
> >>source code. I think they have a headless API if you're still evaluating
> >>software libraries that meet your needs.
> >>
> >>If you have MS Office installed on your system, you could use VBA scripts
> >>to automate this. You could also write code that remote controls Word
> over
> >>a COM port.
> >>
> >>Searching on Google for "altChunk POI", someone said Aspose (a commercial
> >>$$$ library) has support for altChunk. I recently migrated 3 software
> >>products at my company from Aspose Cells to POI Spreadsheet due to
> >>increased licensing costs and poorly documented API, no source code
> access
> >>(to make up for the API documentation), inability to add missing features
> >>with a forked version, and lack of transparency of memory/speed
> performance
> >>due to closed source.
> >>
> >>Best of luck solving your problem!
> >>On May 17, 2016 09:29, "Алексей Ушаровский" <  [email protected] > wrote:
> >>
> >>
> >>And another question. Is there any standard way to join two docx files
> into
> >>one document by POI. Unfortunately i found nothing about it in the
> internet.
> >>--
> >>Отправлено из Mail.Ru для Android вторник, 17 мая 2016г., 18:55 +03:00 от
> >>Алексей Ушаровский <  [email protected] > :
> >>
> >>>
> >>>Thank you, Javen!
> >>>How I understand problem is not only on hi level interface. POI has it
> own
> >>classes which implement many but not all OOXML items.
> >>>--
> >>>Отправлено из Mail.Ru для Android вторник, 17 мая 2016г., 18:49 +03:00
> от
> >>"Javen O'Neal" <  [email protected] > :
> >>>
> >>>>Yes, if you're willing to write using CT* classes.
> >>>>
> >>
> http://www.atetric.com/atetric/javadoc/org.apache.poi/ooxml-schemas/1.1/org/openxmlformats/schemas/wordprocessingml/x2006/main/CTBody.html
> >>>>
> >>>>I couldn't find a higher-level abstraction on top of this in POI
> though.
> >>>>If you get something working, please submit it back to POI so that your
> >>>>work can benefit others with a similar problem.
> >>>>On May 17, 2016 8:34 AM, "Алексей Ушаровский" <  [email protected] >
> wrote:
> >>>>
> >>>> Hello!
> >>>>Is it possible to use altChunk OOXML items in docx by POI library?
> >>>>
> >>>>--
> >>>>Regards,
> >>>>Alex
>
>

Reply via email to