Eric White
Forum Replies Created
-
AuthorPosts
-
Hi Amita,
I was afraid of this situation.
The problem with replacing jszip is that this would be a pretty major project.
There is a newer version of jszip, I believe. It would be interesting to try this out.
My issue is that I have too much work right now. I would need to try this out, test in depth.
I will check with the folks at Microsoft, see if anything can be done.
Thanks, Eric
Yes, sometimes there are no run properties for a run, in which case it uses the run properties from the style, and then from the global defaults. This is valid Open XML, and your code should be prepared to handle this.
-Eric
Thanks, Amita.
I will make a note of this, and when possible will update the Open-Xml-Sdk-JavaScript
Cheers, Eric
The Open XML Package Editor Power Tool source code is available on GitHub:
Open XML Package Editor Power Tool on GitHub
There is a binary version, but apparently it does not work with 2015.
Download: Binary version of Open XML Package Editor Power Tool that does not work with 2015.
Alternatively, another great tool is the OOXML Tools Extension for Chrome. You can take the same approach using this tool.
In the following screen-cast series, watch the OOXML Tools Extension for Chrome screen-cast:
I recommend watching the other screen-casts in this series as well.
Cheers, Eric
- This reply was modified 8 years, 5 months ago by Eric White.
Hi Ranjith,
This is one of the areas where we do not currently have enough content – that explains how to create charts for XLSX using the Open XML SDK.
Are you comfortable, in general, with creating and modifying Open XML documents using the Open-Xml-Sdk? You need to be familiar with creating markup and creating parts, where the parts have a given content type, and creating relationships between parts, where the relationships have the appropriate relationship type.
The approach that you need to take is to create a spreadsheet that does not have the desired text box, copy it, then in the copy, add the text box, then use the Open XML SDK Productivity Tool to determine the differences between the two. This will teach you about the markup you need to create. See the following screen-cast:
Screen-Cast: How to Research Open XML Markup
Beyond that, I recommend that you watch the various screen-casts that are an introduction to Open XML:
See the screen-cast series in the sidebar on this blog.
This is not a feature of DocumentAssembler, unfortunately. It is a great idea though. I will add it to the list of suggested enhancements for DocumentAssembler.
What I suggest is that you transform your XML to another form where your repeating data is in an XML element in your data, and then refer to that element in your table.
Cheers, Eric
Hi,
I have recorded a screen-cast that explains how I debug these types of problems:
Screen-Cast: Debugging Open XML when the Office Client Crashes
Please let me know how you get on.
Cheers, Eric
Hi Gary,
Unfortunately, I don’t know what particular document you are referring to. Over the years, I have written over 1000 articles and blog posts on Open XML, and recorded more than 200 videos. If you can give me an idea of the problem you are trying to solve, I can probably recommend some content to help you out.
Have you taken a look at the various screen-cast series on Open XML? Links are in the sidebar on this blog.
Cheers, Eric
Hi Ranjith,
I don’t have any sample Open XML code that does this. However, in my opinion, it is not impossible – just a matter of writing the correct markup, creating the correct parts with the right content and relationship types, and so on.
Unfortunately, given my current commitments, I don’t have time to put together this example right now. But I encourage you to continue. It really is not impossible.
Cheers, Eric
I have never seen these failures.
If you pull both repos now, and run the unit tests on a clean build, do you see these failures?
We did have some unit tests that could fail if you had your locale set to something other than US English, having to do with formatting of numbers (differences with commas and periods in formatting of numbers). However, I have never seen failures associated with throwing of System.IO.InvalidDataException.
Please pull the repos again, do a clean build, and let me know how it goes.
Cheers, Eric
Hi,
Sorry for the long delay in reply. I’ve been heads-down on another very cool, but very difficult Open XML project, to be announced on this blog in the next day or son.
There are two modules in the Open-Xml-PowerTools that can search and replace text:
- OpenXmlRegex
- TextReplacer (A previous implementation that was replaced by OpenXmlRegex)
There is another module, DocumentAssembler, which also sounds as though it would meet your needs.
Unfortunately, all of these modules are written in C#. The process to convert them to JavaScript is a complex, time consuming task. See this blog post for more information. Frankly, I do not know anyone other than myself who has the expertise necessary to do this conversion.
I believe that there is only one approach that you can and should take, which is to write a web service in C# using Open-Xml-PowerTools, and then consume that web service from your JavaScript code.
I have never written code that takes this approach, but I believe that it is possible.
-Eric
Hi,
Very sorry for the long delay in response. I have been heads-down in a rather difficult but very cool Open XML project – I’ll be blogging on this within the next two days.
The Open-Xml-SDK is capable of creating any Open XML document. It is only a matter of creating the right markup, the right parts with the right XML or binary content, and creating proper content and relationship types. Key point is to use the Open XML SDK Productivity Tool to help you figure out what that is.
I don’t have any specific experience on embedding PDFs into presentations. I have successfully created files with embedded OLE objects, so I do know it is possible. Make sure that your content types and relationship types are correct.
Sorry again for the slow response.
I am quite sure that there is a difference in markup between setting the color directly, and setting the color to one of the colors of the theme. Unfortunately, I don’t know what the difference is without doing the research.
I would take the approach of creating a presentation that uses one of the colors of the theme, saving it, copying it, then changing the copy to use a different one of the colors of the theme, and then using the Open Xml SDK Productivity Tool to compare the two, thereby finding out how to change the color to use any of the colors of the theme. This process is demonstrated in the following screen-cast.
Please let me know how you get on.
-Eric
Hi,
Sorry for the slow reply – I have been heads-down on another project (watch my blog tomorrow 🙂
Are you talking about using the C# Open-Xml-Sdk to do this? Or some other API? Are you speaking of modifying an existing presentation, or of creating a new one?
In general, everything you can do in PowerPoint, you can do via Open XML. You can go into a slide, modify elements and attributes as you like, to give it the same appearance / functionality as you could do via PowerPoint.
There is an easy way to research Open XML markup. Please watch the following screen-cast:
Hi,
I am not sure about the issues with saving to Base 64 when working on node.
What I would do in this situation is to do this operation using the browser, save to a file, then do this operation using node, save to a file, and then unzip both files, and look at the binary parts, and see if I could determine a pattern to the differences. Is there an issue associated with some binary parts being partially written but not fully written?
Following that experiment, I would go into the Open-Xml-Sdk-JavaScript code, find the place where it is writing the binary parts, and examine the data in memory, see if I had the right data.
I would also probably write a super-small example program that experiments with the appropriate low-level APIs and see if I could get node to behave / misbehave in the same way as you observe when using the Open-Xml-Sdk-JavaScript.
Unfortunately, my current schedule / commitments prohibit me from doing this work. But that is the good thing about open source – you have the source code.
Wish I had a better answer for you, but unfortunately, I don’t.
-
AuthorPosts