Utilitaire simple pour convertir un document Microsoft Word '.Doc', Microsoft Excel '.xls' et Microsoft PowerPoint .ppt Files à tout autre format pris en charge tel que .txt .csv .rtf .pdf.
Peut également être utilisé pour convertir .txt, .rtf, .csv en .doc, .xls ou .pdf.
Peut être utilisé pour convertir les documents de mots plus anciens au format dernier.
Doit avoir Microsoft Word, Excel ou PowerPoint installé sur la machine hôte.
Téléchargez la version des versions de GitHub - https://github.com/tobya/docto/releases/ Plus d'informations disponibles sur https://tobya.github.io/docto/
Plus d'exemples disponibles à
Téléchargez .exe à partir de la version https://github.com/tobya/docto/releases
Également disponible pour l'installation via Chocolatey
Choco Installer Docto
Pour passer à la dernière version
docto de mise à niveau Choco
Node Wrappers a été créé par @kerimg & @brrd
https://www.npmjs.com/package/node-docto
https://github.com/brrd/msoconvert
Veuillez enregistrer un problème pour tous les bogues, fonctionnalités ou suggestions.
Convertir le document Word Microsoft en texte
docto -f C:DirectoryMyFile.doc -O "C:Output DirectoryMyTextFile.txt" -T wdFormatText
Convertir le document Microsoft Excel en texte CSV
docto -XL -f C:DirectoryMyFile.xls -O "C:Output DirectoryMyTextFile.csv" -T xlCSV
Convertir le document Microsoft Word en PDF (nécessite une version de Microsoft Word qui prend en charge cela).
docto -f C:DirectoryMyFile.doc -O "C:Output DirectoryMyTextFile.pdf" -T wdFormatPDF
Convertir tous les documents Microsoft Word dans Directory et ses sous-répertoires en PDF
docto -f "C:Dir with SpacesFilesToConvert" -O "C:DirToOutput" -T wdFormatPDF -OX .pdf
Supprimer les fichiers originaux après la conversion (-r).
docto -f "C:Dir with SpacesFilesToConvert" -O "C:DirToOutput" -T wdFormatPDF -OX .pdf -R true
Ajoutez un webhook pour tirer sur chaque conversion (-W)
docto -f "C:Dir with SpacesFilesToConvert" -O "C:DirToOutput" -T wdFormatPDF -OX .pdf -W https://toflidium.com/webhooks/docto/webhook_test.php
Un webhook est une URL qui peut être appelée sur chaque converstion pour vous donner la possibilité de repondir à l'extérieur chaque fois qu'un fichier est converti. Actuellement, l'adresse https est expérimentale, alors enregistrez un problème si vous avez des problèmes.
Si vous utilisez Docto in the Wild quelque part, veuillez ajouter des détails à cette page wiki
Si vous devez mettre à niveau un tas de fichiers pour fonctionner sans conversion sur OneDrive / Office365 / Word 20XX, vous pouvez utiliser Docto. Voir cette question StacKExchange
https://webapps.stackexchange.com/questions/74859/what-format-does-word-online-use
Help
Docto Version:%s
Office Version : %s
Open Source: https://github.com/tobya/DocTo/
Description: DocTo converts Word Documents and Excel Spreadsheets to other formats.
Command Line Parameters:
Each Parameter should be followed by its value eg
-f "c:DocsMyDoc.doc"
Parameters markers are case insensitive.
-H This message
--HELP -?
-WD Use Word for Converstion (Default). Help '-h -wd'
--word
-XL Use Excel for Conversion. Help '-h -xl'
--excel
-PP Use Powerpoint for Conversion. help '-h -pp'
--powerpoint
-VS Use Visio for Conversion.
--visio
-F Input File or Directory
--inputfile
-FX Input file search for if -f is directory. Can use .rtf test*.txt etc
Default ".doc*" (will find ".docx" also)
--inputextension
-O Output File or Directory to place converted Docs
--outputfile
-OX Output Extension if -F is Directory. Please include '.' eg. '.pdf' .
If not provided, pulled from standard list.
--outputextension
-T Format(Type) to convert file to, either integer or wdSaveFormat constant.
Available from
https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.word.wdsaveformat
or https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.xlfileformat
or https://docs.microsoft.com/en-us/office/vba/api/powerpoint.presentation.saveas
See current List Below.
--format
-TF Force Format. -T value if an integer, is checked against current list
compiled in. It is not passed if unavailable. -TF will pass through value
without checking. Word will return an "EOleException Value out of range"
error if invalid. Use instead of -T.
--forceformat
-L Log Level Integer: 1 ERRORS 2 STANDARD 5 CHATTY 9 DEBUG 10 VERBOSE. Default: 2=STANDARD
--loglevel
-C Compatibility Mode Integer. Set to an INTEGER value from
https://msdn.microsoft.com/en-us/library/office/ff192388.aspx.
Set the compatibility mode when you want to convert documents to a later
version of word. See help '-h -c' for further info.
--compatibility
-E Encoding Integer: Sets codepage Encoding. See
https://msdn.microsoft.com/en-us/library/office/ff860880.aspx
for more details and values.
--encoding
-M Ignore all files in __MACOSX subdirectory if it exists. Default True.
--ignoremacos
-N Make list of files that take over n seconds to complete.
Use number of seconds over that conversion takes and add to list.
Outputs to filename 'docto.ignore.txt'
--listlongrunning
-NX Ignore any file listed in docto.ignore.txt, created by -N
--ignorelongrunninglist
-G Write Log to file in directory
--writelogfile
-GL Log File Name to Use. Default 'DocTo.Log';
--logfilename
-Q Quiet Mode: Nothing will be output to console. To see any errors you must
set -G or -GL. Equivalent to setting -L 0
--quiet
-R Remove Files after successful conversion: Default false; To use specify
value eg -R true
--deletefiles
-W Webhook: Url to call on events. See help '-H -HW' for more details.
--webhook
-X Halt on COM Error: Default True; If you have trouble with some files
not converting, set this to false to ignore errors and continue with
batch job.
--halterror
-V Show Versions. DocTo and Word/Excel/Powerpoint
Long Parameters:
--BookmarkSource
PDF conversions can take their bookmarks from
WordBookmarks, WordHeadings (default) or None
--DoNotOverwrite
--no-overwrite
Existing files are overridden by default, if you do not wish a file to be
over written use this option.
--no-subdirs Only convert specified directory. Do not recurse sub directories
--ExportMarkup Value for wdExportItem - default wdExportDocumentContent.
use wdExportDocumentWithMarkup to export all word comments with pdf
--no-IncludeDocProperties
--no-DocProp
Do not include Document Properties in the exported pdf file.
--PDF-OpenAfterExport
If you wish for a converted PDF to be opened after creation. No value req.
--PDF-FromPage
Save a range of pages to pdf. Integer/String. If integer --PDF-ToPage must also be set.
Other values wdExportCurrentPage, wdExportSelection
--PDF-ToPage
Save a range of pages to pdf. Integer. --PDF-FromPage must also be set.
--PDF-OptimizeFor
Set the pdf/xps to be optimized for print or screen.
Default ForPrint | ForOnScreen
--XPS-no-IRM
Do not copy IRM permissions to exported XPS document.
--PDF-No-DocStructureTags
Do not include DocStructureTags to help screen readers.
--PDF-no-BitmapMissingFonts
Do not bitmap missing fonts, fonts will be substituted.
--use-ISO190051
Create PDF to the ISO 19005-1 standard.
Experimental:
--skipdocswithtoc
EXPERIMENTAL. Will skip any docs that contain a TOC to prevent hanging.
Currently matches some false positives. Default False.
--stdout
Send file to Stdout after conversion. ( Does not work correctly for binary files)
ERROR CODES:
200 : Invalid File Format specified
201 : Insufficient Inputs. Minimum of Input File, Output File & Type
202 : Incorrect switches. Switch requires value
203 : Unknown switch in command
204 : Input File does not exist
205 : Invalid Parameter Value
220 : Word or COM Error
221 : Word not Installed
400 : Unknown Error
3 paramètres sont requis
Les paramètres qui prennent une valeur ont un espace qui les sépare de la valeur. Certains paramètres ne nécessitent pas de valeur. Tous les paramètres sont insensibles au cas.
-F - Interfile
Le fichier ou le dossier que vous souhaitez ouvrir le docteur. S'il s'agit d'un dossier, Docto chargera tous les fichiers de ce répertoire et de ses sous-répertoires. Si vous ne souhaitez pas charger de fichiers à partir de sous-répertoires, consultez le paramètre --no-subdirs .
La conversion sera effectuée sur chaque fichier tour à tour.
-O --outputfile
Le nom de fichier ou le nom de dossier où vous souhaitez que les fichiers de sortie soient placés. Si l'entrée est un fichier mais que la sortie est un dossier, le fichier de sortie aura le même nom que l'entrée mais avec la nouvelle extension.
-T - Format
Spécifiez à quel format vous souhaitez convertir, tel que wdFormatPDF ou wdFormatText , etc.
Affichez les formats de mots possibles et les formats Excel. Peut également utiliser la valeur entière
-H, - help
Afficher le texte d'aide répertoriant tous les paramètres et versions des applications de docto et de bureau
-V --version
Affichez la chaîne de version de Docto et Microsoft Office.
-Wd -xl -pp -vs
Ce paramètre indique à Docto lequel des applications que vous souhaitez utiliser pour charger et enregistrer votre document pour des raisons historiques, le médecin est par défaut -WD si aucune valeur n'est donnée, mais c'est une bonne habitude pour toujours utiliser l'une de ces valeurs chaque fois que vous utilisez Docto.
-Fx - inputextension
Par défaut, Docto chargera tous les fichiers du répertoire avec l'extension de l'application standard
par exemple, par exemple
Si vous souhaitez convertir un ensemble différent de fichiers, par exemple .rtf
-Ox --outputextension
L'extension de sortie sur une conversion est tirée d'une liste standard, par exemple. Si la conversion en wdformatpdf, le fichier sera sorti avec l'extension .pdf . Si vous souhaitez spécifier votre propre extension (telle que .pdfx ), vous pouvez avec ce paramètre.
-Tf --forceformat
Si -T est un entier s'il s'agit d'une valeur qui n'était pas disponible lorsque le docto a été compilé, il augmentera une erreur. Si vous utilisez -tf, il passera la valeur entière de -T à la demande Office sans vérifier.
-L --vel
Définir le niveau de sortie du journal. -L 10 est utile pour le débogage. Utilisez -l 0 ou -Q pour dépasser la journalisation.
Niveaux ####
-C - Compatibilité
Entier en mode de compatibilité. Défini sur une valeur entière à partir de la liste MSDN.
Définissez le mode de compatibilité de la version de Word avec lequel le document doit être compatible. Particulialement utile pour convertir des documents plus anciens en version actuelle. Peut être utilisé pour convertir les anciens documents Word pour être compatibles avec OneDrive.
-E --coding
Définit le codage de codepage. Voir MSDN pour plus de détails et de valeurs.
-N --listlongrunning
Certains fichiers lorsqu'ils sont convertis peuvent faire apparaître une boîte de dialogue. Cela ne peut être fixé que par une intervention manuelle. En définissant ce paramètre, vous pouvez au moins enregistrer les documents qui causent des difficultés (à un fichier appelé docto.ignore.txt ) et si vous définissez -NX ces documents seront ignorés lors des exécutions suivantes.
-Nx --IgnorelongrunningList {sans valeur-requis}
Lors de la définition des fichiers répertoriés dans docto.ignore.txt dans le même répertoire que docto.exe sera ignoré. Cela permet d'ignorer des documents gênants dans une structure de répertoire.
-G --writelogfile [Aucune valeur requise]
Écrivez le journal dans un fichier ainsi que stdout. docto.log par défaut.
-Gl - Logfilename {nom de fichier}
Spécifiez le nom de fichier auquel vous souhaitez que le fichier de journal soit écrit.
-Q --quiet [Aucune valeur requise]
Aucune sortie à Stdout. Tout, y compris les erreurs, est dépressé. Utilisez en conjonction avec -G pour vous assurer d'obtenir des erreurs.
-R --DeleteFiles {true | false}
Si vous souhaitez que le fichier d'entrée soit supprimé après la conversion, vous pouvez le définir sur True.
-W --webhook
Si vous le souhaitez, vous pouvez appeler une URL Web après chaque conversion ou erreur. L'URL WebHook sera appelée sur les événements suivants avec les paramètres suivants
Conversion de fichiers
Erreur
La valeur de retour est enregistrée dans le journal du médecin
-X --halterror {true | false}
Le docto s'arrêtera lorsqu'une erreur COM sera augmentée. Si vous souhaitez ignorer l'erreur et continuer à définir cette valeur sur true.
--Bookmarksource {source}
Les conversions PDF peuvent prendre leurs signets de WordBookmarks, Wordheadings (par défaut) ou aucun
--Donotoverwrite --no-overwrite [Aucune valeur requise]
Les fichiers existants sont remplacés par défaut, si vous ne souhaitez pas qu'un fichier soit trop écrit, utilisez cette option.
- Pas de subdages
Par défaut, les sous-répertoires sont convertis. Utiliser pour convertir uniquement le répertoire spécifié. Ne recursuez pas les sous-répertoires
--Exportmarkup
Spécifier
Utilisez wdexportDocumentWithMarkup pour exporter tous les commentaires de mots avec PDF
--PDF-OpenafterExport
Si vous souhaitez que le PDF converti soit ouvert après la création. Aucune valeur req.
--PDF-FROMPAGE
--pdf-topage
Convertissez uniquement certaines pages dans le document.
--USE-ISO190051
Créez un PDF à la norme ISO 19005-1, également connu sous le nom d'archive PDF-A ou PDF.
-M --Ignoremacos {true | false}
Par défaut, Docto ignore tous les fichiers dans un répertoire __MACOSX caché que CacOS crée. Ce répertoire est souvent présent sur un disque externe partagé entre les systèmes. Si vous souhaitez vérifier ce DIR, définissez cette valeur. Vous devez spécifier la valeur, par exemple -M false .
Le projet se compile avec Delphi (j'utilise 10.3 mais il devrait compiler avec la plupart des versions, y compris XE4 et 7). Le projet ne se compilera pas sur Linux car il utilise plusieurs composants Windows uniquement tels que com et word et excel n'ont pas de versions Linux de toute façon, donc il n'y en aurait aucun point.
Xlsto est désormais incorporé dans Docto. Auparavant, XLSto était un exe séparé qui a été utilisé pour convertir les fichiers XLS en CSV ou PDF. Cela peut maintenant être fait avec le DocTo.exe principal en ajoutant simplement le drapeau -xl.
Je suis heureux d'accepter n'importe quel RP qui pourrait soumettre. Si une grande quantité de travail impliqué, veuillez d'abord ouvrir un problème pour vous assurer que l'effort ne sera pas gaspillé.
Le nom de la branche principale du dépôt est DocTo
J'ai commencé à rédiger des tests fonctionnels dans PHP pour vérifier si l'application manipule correctement les documents. Si vous connaissez PHP Laravel et Pest, j'aimerais quelques tests supplémentaires.