Powtarzające się problemy ze scalaniem pliku PDF z plikiem PDF catia

Cze wszystkim.
Dla przypomnienia, w ogóle nie jestem użytkownikiem CATIA, ale mamy kolegów, którzy z niego korzystają. Ze swojej strony jestem programistą, korzystamy z systemu ERP (IFS), w którym wprowadzamy arkusze na zlecenia pracy, a na każdym zleceniu pracy mamy PDF-y, które są podlinkowane do elementu.
Na OF mamy raport, który generujemy, w którym łączymy te różne pliki PDF, aby uzyskać tylko 1 wynik.
Problem polega na tym, że w 9 przypadkach na 10 to scalanie nie działa, a jeśli nie działa, dotyczy to tylko plików PDF, które zostały wygenerowane za pomocą CATIA.

Dzisiaj napotykamy ten komunikat o błędzie:
Ifs.Fnd.FndSystemException: Eksplorator: Wystąpił nieobsługiwany wyjątek —> Datalogics.PDFL.LibraryException: Nie można odnaleźć obiektu XObject o nazwie ‹ %s ›.: Nie można odnaleźć obiektu XObject o nazwie ‹ %s ›. Numer błędu: 537329691

Jakie informacje mógłbyś mi udzielić, abyśmy mogli poprawnie generować pliki PDF za pomocą CATIA? Dziwne jest to, że te pliki PDF wygenerowane za pomocą CATIA otwierają się bez błędów...

Wersja CATIA posiadamy: V5 R27, R28, R31

Witaj Romain,
Opracowałem aplikację podobną do Twojej, która łączy SolidWorks z naszym systemem ERP, w tym pliki PDF.
Nie korzystałem z biblioteki Datalogics, ponieważ nie musiałem scalać plików.
Ponieważ kupiłeś licencję biblioteki, zacznę od zwrócenia się do nich i zapytania, czy kiedykolwiek mieli ten problem.

Witaj remremrem,

Przeprowadziłem nową analizę i nie wydaje mi się, żebyśmy kupili licencję Datalogics, ale zauważyłem coś dość dziwnego.
W programie deweloperskim, który generuje raport, pobieram pliki PDF z CATIA, następnie zmieniam ich rozmiar strona po stronie, aby przekonwertować je do formatu A4, a gdy tylko natknę się na stronę CATIA, mam pustą stronę w pliku PDF o zmienionym rozmiarze, ale w pliku PDF innym niż CATIA nie mam żadnych błędów... W pewnym momencie mieliśmy użytkowników, którzy napotkali błąd, że czcionka CatiaSymbols nie została rozpoznana, zainstalowaliśmy ją na stacjach roboczych użytkowników i ten błąd został poprawiony, teraz jest tylko ten błąd związany z XObject, ale nie można go rozwiązać w żaden sposób

A jednak się opłaca: elastyczne licencjonowanie i ceny

Widziałem już na innych forach programistycznych, takich jak https://www.developpez.net korzystania z biblioteki OpenSource PdfSharp: Przegląd biblioteki PDFsharp

Jeśli wypróbujesz tę bibliotekę, jestem ciekaw wyniku,

1 polubienie

Wszystko, co mogę powiedzieć, to to, że błąd, który do nas dotarł, pochodzi z naszego ERP (a więc z IFS), a cały błąd jest następujący:

Ifs.Fnd.FndSystemException: Eksplorator: Wystąpił nieobsługiwany wyjątek —> Datalogics.PDFL.LibraryException: Nie można odnaleźć obiektu XObject o nazwie ‹ %s ›.: Nie można odnaleźć obiektu XObject o nazwie ‹ %s ›. Numer błędu: 537329691
pod adresem Datalogics.PDFL.Document.Print(PrintUserParams userParams)
pod adresem Ifs.Application.InfoServicesFramework.FndPDFLibrary.PrintFile(Nazwa pliku ciągu, Ciąg nazwa_drukarki, Int32 kopie, Int32 pageFrom, Int32 pageTo, Ciąg localPrintjobName)
pod adresem Ifs.Application.InfoServicesFramework.DocumentFileHandler.Print(instancja PrintInstance, ciąg NazwaDrukarki)
pod adresem Ifs.Application.InfoServicesFramework.PrintDialog.PrintReportToPhysicalPrinter(instancja PrintInstance)
at Ifs.Application.InfoServicesFramework.PrintDialog.cmdOk_Execute(Nadawca obiektu, FndCommandExecuteEventArgs e)
w Ifs.Fnd.Windows.Forms.FndCommand.OnExecute(składnik komponentu)
pod adresem Ifs.Fnd.Windows.Forms.FndCommandButton.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Wiadomość& m, przycisk MouseButtons, Int32 kliknięcia)
at System.Windows.Forms.Control.WndProc(Message& m)
pod adresem System.Windows.Forms.ButtonBase.WndProc(Message&m)
pod adresem System.Windows.Forms.Button.WndProc(Message&m)
pod adresem System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&m)
pod adresem System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
— Koniec śladu stosu wyjątków wewnętrznych —

Dla mnie biblioteka Datalogics jest już zawarta w IFS i nie mamy kontroli nad tym, której biblioteki użyć

Witam
W szybkim wyszukiwaniu wydaje się, że jest to brakujący obiekt w pliku PDF wygenerowanym przez Catia. Powinieneś spojrzeć na tę stronę bezpośrednio na forach Catia lub zobaczyć z Dassault. Może również zapoznać się z zainstalowaną wersją Adobe i jej kompatybilnością z Datalogics.

1 polubienie

Cześć Roman,
Rozumiem lepiej. Myślałem, że to ty napisałeś kod.
Czy w programie CATIA są dostępne opcje konfiguracji eksportu PDF?

1 polubienie

Witam, widzę, że minęło trochę czasu, odkąd zadałeś pytanie, ale ponieważ nie widzę rozwiązania, spróbuję szczęścia, jeśli to może ci pomóc i jeśli nadal nie udało ci się rozwiązać problemu.

Na początek, czy możesz mi powiedzieć, jak twoi koledzy generują pliki PDF?

Można to zrobić na kilka sposobów, więc może zacznij od wypróbowania innego (o czym mogę ci powiedzieć)

Witam.
W zeszłym tygodniu pracowałem nad tym przy wsparciu oprogramowania, którego używamy do tworzenia naszych raportów, i znaleźli przyczynę problemu, przyczyna pochodzi z samych plików PDF, gdzie mają ustawienia bezpieczeństwa, które zabraniają scalania, ale także wyodrębniania stron, nawet jeśli nie są one chronione hasłem (dostęp do tych ustawień zabezpieczeń można uzyskać z programu Acrobat Reader, naciskając CTRL + D, zakładka " zabezpieczenia ").
Dział wsparcia poradził nam, aby poprosić użytkowników, którzy dodają te pliki PDF do naszego systemu ERP, o ich przeróbkę, aby były kompatybilne z naszym rozwojem.
W porównaniu z oprogramowaniem CATIA, wszystko, co mi powiedziano, to to, że oprogramowanie nie zapewnia opcji generowania plików PDF, na przykład nie ma możliwości generowania innych niż wersja 1.3. Ale wszystko, co pozostaje, to znaleźć sposób na " przeskoczenie " tych zamków, próbowałem ponownie wygenerować plik PDF za pomocą drukarki PDF, bez powodzenia...

Czy jesteś pewien, że scalanie i wyodrębnianie stron jest zabronione tylko w plikach PDF Catia? Osobiście jest zablokowany we WSZYSTKICH moich plikach PDF (nawet tych z Excela, PPT, Worda...)

Oto obraz, aby upewnić się, że mówimy o tych samych zakazach:

1 polubienie

Takie same ograniczenia jak w przypadku @Wrem.rem dla plików PDF generowanych przez programy Excel i Solidworks.
I nie ma problemu z łączeniem z Pdfsam Basic (wer. 4.1.1)

Witam.
Dziś rano zrobiłem dodatkowe badania i tym razem były one jednoznaczne.
Na PDF od CATIA użyłem mojej drukarki PDF (microsoft print to PDF) do wygenerowania tego dokumentu, a na wygenerowanym pliku udało mi się zmienić ich rozmiar na A4 (kiedyś miałem dokument w formacie A0) i tam scalanie działało bardzo dobrze.

Świetnie, dobrze, biorąc pod uwagę ideę formatu