Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Using the InDesign COM object in .NET -- Documentation?

New Here ,
Aug 21, 2010 Aug 21, 2010

Please forgive me for any uneducated questions.  I have no experience in using Adobe products (like InDesign and Illustrator).  I leave that for the design department.  🙂

I have been reading and researching for over 10 hours, and I still haven't found much information.

I'm developing a website that allows our customers to send us a multitude of file types, including .ai, .indd, .psd, .pdf, and .eps.  We would like to be able to create a thumbnail out of the uploaded file.

I think I might be able to accomplish this by using the COM object created by InDesign (the .tlb file).  So far, I have successfully added it to my project, and using a few lines of code, I was able to open an .indd file, and export it to a .pdf.  However, there are some issues:

  1. Does it really have to open the application every time?  If we're running this on a server (webserver or other), this doesn't seem to be an efficient method.
  2. The test files I have used immediately open a message box referring to updating links.  It includes an 'OK' button.  Without manual intervention to click 'OK', the process halts.  Again, not efficient.
  3. I've read about 'placing' .ai files in an .indd.  If we can use the InDesign COM object, can we use it to export an .ai to a .pdf/.jpg, even if it means placing it on an .indd?  (In essence, I'd love to find one Adobe product that can handle all of the file types listed above.)
  4. Is there any documentation on all of the properties/functions of the COM object?
  5. Perhaps a script would handle this better?
  6. What exactly *IS* InDesign server?  Would this be a better option (especially if it handles issues 1-3).

Thanks in advance for any information.  My brain hurts severely from information overload.

Kyle

TOPICS
Scripting
5.9K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Expert , Aug 25, 2010 Aug 25, 2010

Correct -- providing an external service using regular InDesign *is* against the EULA. (And I was *sure* Adobe had at least some server-based graphic app ... Oh well -- it's past 11 over here, bedtime.)

Bridge does not create thumbnails At least for InDesign, it relies on XMP data in the original files. Check this post out: http://forums.adobe.com/message/1109876

Translate
New Here ,
Aug 25, 2010 Aug 25, 2010

Polite bump, please? 

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 25, 2010 Aug 25, 2010

First off, what you are proposing is against InDesign's EULA. You *must* have InDesign Server for this to be legal.

Second: isn't COM some Microsoft object format? What InDesign uses is usually called the "DOM" (Document Object Model).

Now with that out of the way, let's tick off your questions.

1. Eh. InDesign IS the program that does the stuff. If you want to use .NET (or Javascript or Applescript or C#) to control it with, fine, but you'll still need to have InDesign running.

2. In the regular InDesign, you can opt to ignore all outgoing messages (only recommended for flawless scripts). If I remember correctly, InDesign Server does not have it, as it only can run in Server Mode, totally without any user interface. So that wouldn't be a problem.

3. Okay ... well, InDesign *can* place all of your images, and (of course) it can only place them into an InDesign document. It's not a file converter or something like that.

4. Sure -- not specifically for .NET, though. The ID interface depends heavily on variable polymorphism -- as such, it works best with Javascript and AppleScript, slightly less well with VB, and you'll have a good time figuring out how to do it with .NET (isn't that a strongly typed language?).

5. Probably, yeah.

6. It's InDesign, but without a user interface, and as such you have to steer it all the way. But it does allow (in the legal sense) what you are planning.

All in all, it seems you want to use a designer's multifunctional package to do a rather mundane service -- something like using Excel to calculate 1+1 with. I think Adobe has a custom made graphic conversion program somewhere, also server based. That might suit you better.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 25, 2010 Aug 25, 2010

[Jongware],

Thank you for the prompt reply!  Your information has been helpful.

I'm not quite sure why what I'm wanting to do is against the EULA, unless it's because I'm doing it at a server level.

Yes, COM is a Microsoft concept.  I do understand that InDesign uses the DOM, but I have seen code snippets where people have utilized the .tlb file from within .NET (C#, too).

1. That sucks, but it is something I suppose I could live with.

2. No comment.

3. If my only objective is to create a thumbnail (whether it be INDD --> PDF --> JPG or INDD --> JPG), and if placing will achieve this, then that's ok.

4. If InDesign server allows me to run a script that will do what I want, that'll work.

5. No comment.

6. I assume there's no way to try-before-you-buy InDesign Server?  I sure wish I could tinker with it before determining if it's the right solution.

I know what I want is WAY overkill, but since we're a shop that uses Adobe products to print large graphics, our customers use Adobe, too.  I'm absolutely FLABBERGASTED that Adobe doesn't offer a way to easily convert their products.  And since what I want to do requires the use of Adobe in some way or fashion, I don't see any other alternative than to use a cannon to kill a fly.

I spoke with "Travis" via chat after reading your post.  He states that Adobe does not offer a product that does what I want, nor does it offer a custom made graphic conversion program.

What an absolute bummer.  I never thought converting an Adobe file to a thumbnail would be so difficult, especially after I noticed how Adobe Bridge flawlessly creates a visible thumbnail for all Adobe types, right in it's own window.

Again, thanks for the information.  If you think of anything else, please let me know.

Kyle

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 25, 2010 Aug 25, 2010

Correct -- providing an external service using regular InDesign *is* against the EULA. (And I was *sure* Adobe had at least some server-based graphic app ... Oh well -- it's past 11 over here, bedtime.)

Bridge does not create thumbnails At least for InDesign, it relies on XMP data in the original files. Check this post out: http://forums.adobe.com/message/1109876

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 30, 2010 Aug 30, 2010

Jongware, holy cow!  I never knew about XMP (shame on me, huh).  I've been working on this since your post.  I downloaded the SDK, wrote a C# wrapper, and voila!  I can now get thumbnails from .indd files.  This did exactly what I needed, and it was free.

Thank you very much!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 30, 2010 Aug 30, 2010

Ha! Very good thinking!

I'm a bit embarrassed that I didn't think of using the XMP SDK myself...

Harbs

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 30, 2010 Aug 30, 2010

Just a heads up:

I'm pretty sure that the XMP will only help if the preview was saved with the original file. There's a checkbox which can be disabled that controls the writing of the preview.

I don't know if this is an issue for you, but you should be aware of it...

Harbs

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Aug 30, 2010 Aug 30, 2010

Also be aware that main difference between pre-CS5 and CS5 XMP structure is in node where preview is stored. For pre-CS5 files, preview is stored in Thumbnails node and in CS5 is stored in PageInfo.

--

tomaxxi

http://indisnip.wordpress.com/

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 30, 2010 Aug 30, 2010

tomaxxi,

Yikes!  Thanks for the heads up.  I had no idea.

If I were to use the http://ns.adobe.com/xap/1.0/g/img/ namespace, is there an XPath that would work all the time to obtain the image?  Perhaps The XMP SDK doesn't use XPath.  I did notice some functions in SXMPUtils that might help, but I wasn't really sure what the documentation meant.

Thanks again for the info.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advisor ,
Aug 30, 2010 Aug 30, 2010

Maybe you can try searching within http://ns.adobe.com/xap/1.0/g/img/ namespace. I never tried it, but now I'm looking into XMP and I saw it, so maybe there is direct access to Image node.

--

tomaxxi

http://indisnip.wordpress.com/

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 30, 2010 Aug 30, 2010

You might get better responses to this question on the XMP SDK forum. (Although it's not exactly the most active forum out there...)

Harbs

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Aug 25, 2010 Aug 25, 2010

[Jongware] wrote:

I think Adobe has a custom made graphic conversion program somewhere, also server based. That might suit you better.

There used to be such a product. I think it was call "Graphic Server" or maybe "Content Server"? or something like that... They killed it some time ago. I'm not sure why...

Just to confirm what Jongware wrote about the EULA: This definitely requires a Server license!

Harbs

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Apr 15, 2011 Apr 15, 2011

is Applicable for Indesign CS 4

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 16, 2011 Oct 16, 2011
LATEST

Could you point me to where the .tlb/Com object is? I can't find it.

Thanks

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines