mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-03 01:36:31 +02:00
<!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request Adds a dedicated command-line interface (CLI) executable for Image Resizer (PowerToys.ImageResizerCLI.exe) ## Command `PowerToys.ImageResizerCLI.exe [options] [files...]` ## Options (High Level) | Option (aliases) | Description | |-----------------|-------------| | `--help` | Show help | | `--show-config` | Print current effective configuration | | `--destination`, `-d` | Output directory (optional) | | `--width`, `-w` | Width | | `--height`, `-h` | Height | | `--unit`, `-u` | Unit (Pixel / Percent / Inch / Centimeter) | | `--fit`, `-f` | Fit mode (Fill / Fit / Stretch) | | `--size`, `-s` | Preset size index (supports `0` for Custom) | | `--shrink-only` | Only shrink (do not enlarge) | | `--replace` | Replace original | | `--ignore-orientation` | Ignore EXIF orientation | | `--remove-metadata` | Strip metadata | | `--quality`, `-q` | JPEG quality (1–100) | | `--keep-date-modified` | Preserve source last-write time | | `--file-name` | Output filename format | ## Example usage ``` # Show help PowerToys.ImageResizerCLI.exe --help # Show current config PowerToys.ImageResizerCLI.exe --show-config # Resize with explicit dimensions PowerToys.ImageResizerCLI.exe --width 800 --height 600 .\image.png # Use preset size 0 (Custom) and output to a folder PowerToys.ImageResizerCLI.exe --size 0 -d "C:\Output" .\photo.png # Preserve source LastWriteTime PowerToys.ImageResizerCLI.exe --width 800 --height 600 --keep-date-modified -d "C:\Output" .\image.png ```  <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist - [ ] Closes: #xxx <!-- - [ ] Closes: #yyy (add separate lines for additional resolved issues) --> - [ ] **Communication:** I've discussed this with core contributors already. If the work hasn't been agreed, this work might be rejected - [x] **Tests:** Added/updated and all pass - [x] **Localization:** All end-user-facing strings can be localized - [x] **Dev docs:** Added/updated - [x] **New binaries:** Added on the required places - [ ] [JSON for signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json) for new binaries - [ ] [WXS for installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs) for new binaries and localization folder - [ ] [YML for CI pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml) for new test projects - [ ] [YML for signed pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml) - [ ] **Documentation updated:** If checked, please file a pull request on [our docs repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys) and link it here: #xxx <!-- Provide a more detailed description of the PR, other things fixed, or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed
502 lines
20 KiB
XML
502 lines
20 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<root>
|
||
<!--
|
||
Microsoft ResX Schema
|
||
|
||
Version 2.0
|
||
|
||
The primary goals of this format is to allow a simple XML format
|
||
that is mostly human readable. The generation and parsing of the
|
||
various data types are done through the TypeConverter classes
|
||
associated with the data types.
|
||
|
||
Example:
|
||
|
||
... ado.net/XML headers & schema ...
|
||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||
<resheader name="version">2.0</resheader>
|
||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||
</data>
|
||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||
<comment>This is a comment</comment>
|
||
</data>
|
||
|
||
There are any number of "resheader" rows that contain simple
|
||
name/value pairs.
|
||
|
||
Each data row contains a name, and value. The row also contains a
|
||
type or mimetype. Type corresponds to a .NET class that support
|
||
text/value conversion through the TypeConverter architecture.
|
||
Classes that don't support this are serialized and stored with the
|
||
mimetype set.
|
||
|
||
The mimetype is used for serialized objects, and tells the
|
||
ResXResourceReader how to depersist the object. This is currently not
|
||
extensible. For a given mimetype the value must be set accordingly:
|
||
|
||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||
that the ResXResourceWriter will generate, however the reader can
|
||
read any of the formats listed below.
|
||
|
||
mimetype: application/x-microsoft.net.object.binary.base64
|
||
value : The object must be serialized with
|
||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||
: and then encoded with base64 encoding.
|
||
|
||
mimetype: application/x-microsoft.net.object.soap.base64
|
||
value : The object must be serialized with
|
||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||
: and then encoded with base64 encoding.
|
||
|
||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||
value : The object must be serialized into a byte array
|
||
: using a System.ComponentModel.TypeConverter
|
||
: and then encoded with base64 encoding.
|
||
-->
|
||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||
<xsd:element name="root" msdata:IsDataSet="true">
|
||
<xsd:complexType>
|
||
<xsd:choice maxOccurs="unbounded">
|
||
<xsd:element name="metadata">
|
||
<xsd:complexType>
|
||
<xsd:sequence>
|
||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||
</xsd:sequence>
|
||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||
<xsd:attribute name="type" type="xsd:string" />
|
||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||
<xsd:attribute ref="xml:space" />
|
||
</xsd:complexType>
|
||
</xsd:element>
|
||
<xsd:element name="assembly">
|
||
<xsd:complexType>
|
||
<xsd:attribute name="alias" type="xsd:string" />
|
||
<xsd:attribute name="name" type="xsd:string" />
|
||
</xsd:complexType>
|
||
</xsd:element>
|
||
<xsd:element name="data">
|
||
<xsd:complexType>
|
||
<xsd:sequence>
|
||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||
</xsd:sequence>
|
||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||
<xsd:attribute ref="xml:space" />
|
||
</xsd:complexType>
|
||
</xsd:element>
|
||
<xsd:element name="resheader">
|
||
<xsd:complexType>
|
||
<xsd:sequence>
|
||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||
</xsd:sequence>
|
||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||
</xsd:complexType>
|
||
</xsd:element>
|
||
</xsd:choice>
|
||
</xsd:complexType>
|
||
</xsd:element>
|
||
</xsd:schema>
|
||
<resheader name="resmimetype">
|
||
<value>text/microsoft-resx</value>
|
||
</resheader>
|
||
<resheader name="version">
|
||
<value>2.0</value>
|
||
</resheader>
|
||
<resheader name="reader">
|
||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||
</resheader>
|
||
<resheader name="writer">
|
||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||
</resheader>
|
||
<data name="AllFilesFilter" xml:space="preserve">
|
||
<value>All Files</value>
|
||
</data>
|
||
<data name="Cancel" xml:space="preserve">
|
||
<value>Cancel</value>
|
||
</data>
|
||
<data name="Height" xml:space="preserve">
|
||
<value>Height</value>
|
||
</data>
|
||
<data name="ImageResizer" xml:space="preserve">
|
||
<value>Image Resizer</value>
|
||
<comment>Product name, do not loc</comment>
|
||
</data>
|
||
<data name="Input_Auto" xml:space="preserve">
|
||
<value>(auto)</value>
|
||
</data>
|
||
<data name="Input_Content" xml:space="preserve">
|
||
<value>Select a size</value>
|
||
</data>
|
||
<data name="Input_Custom" xml:space="preserve">
|
||
<value>Custom</value>
|
||
</data>
|
||
<data name="Input_IgnoreOrientation" xml:space="preserve">
|
||
<value>Ignore the _orientation of pictures</value>
|
||
</data>
|
||
<data name="Input_GifWarning" xml:space="preserve">
|
||
<value>Gif files with animations may not be correctly resized.</value>
|
||
</data>
|
||
<data name="Input_Replace" xml:space="preserve">
|
||
<value>Ov_erwrite files</value>
|
||
</data>
|
||
<data name="Input_Resize" xml:space="preserve">
|
||
<value>Resize</value>
|
||
</data>
|
||
<data name="Input_ShrinkOnly" xml:space="preserve">
|
||
<value>_Make pictures smaller but not larger</value>
|
||
</data>
|
||
<data name="Large" xml:space="preserve">
|
||
<value>Large</value>
|
||
</data>
|
||
<data name="Medium" xml:space="preserve">
|
||
<value>Medium</value>
|
||
</data>
|
||
<data name="OK" xml:space="preserve">
|
||
<value>OK</value>
|
||
</data>
|
||
<data name="OK_Tooltip" xml:space="preserve">
|
||
<value>Apply settings</value>
|
||
</data>
|
||
<data name="Phone" xml:space="preserve">
|
||
<value>Phone</value>
|
||
</data>
|
||
<data name="PictureFilter" xml:space="preserve">
|
||
<value>All Picture Files</value>
|
||
</data>
|
||
<data name="PngInterlaceOption_Default" xml:space="preserve">
|
||
<value>(Default)</value>
|
||
</data>
|
||
<data name="PngInterlaceOption_Off" xml:space="preserve">
|
||
<value>Off</value>
|
||
</data>
|
||
<data name="PngInterlaceOption_On" xml:space="preserve">
|
||
<value>On</value>
|
||
</data>
|
||
<data name="Progress_MainInstruction" xml:space="preserve">
|
||
<value>Resizing your pictures...</value>
|
||
</data>
|
||
<data name="Progress_Stop" xml:space="preserve">
|
||
<value>Stop</value>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_HourMinute" xml:space="preserve">
|
||
<value>About {0} hour, {1} minute remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_HourMinutes" xml:space="preserve">
|
||
<value>About {0} hour, {1} minutes remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_HoursMinute" xml:space="preserve">
|
||
<value>About {0} hours, {1} minute remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_HoursMinutes" xml:space="preserve">
|
||
<value>About {0} hours, {1} minutes remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_MinuteSecond" xml:space="preserve">
|
||
<value>About {1} minute, {2} second remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_MinuteSeconds" xml:space="preserve">
|
||
<value>About {1} minute, {2} seconds remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_MinutesSecond" xml:space="preserve">
|
||
<value>About {1} minutes, {2} second remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_MinutesSeconds" xml:space="preserve">
|
||
<value>About {1} minutes, {2} seconds remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_Second" xml:space="preserve">
|
||
<value>About {2} second remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="Progress_TimeRemaining_Seconds" xml:space="preserve">
|
||
<value>About {2} seconds remaining.</value>
|
||
<comment>"About" = Approximately, not "on the subject of"</comment>
|
||
</data>
|
||
<data name="ResizeFit_Fill" xml:space="preserve">
|
||
<value>Fill</value>
|
||
</data>
|
||
<data name="ResizeFit_Fill_ThirdPersonSingular" xml:space="preserve">
|
||
<value>fills</value>
|
||
</data>
|
||
<data name="ResizeFit_Fit" xml:space="preserve">
|
||
<value>Fit</value>
|
||
</data>
|
||
<data name="ResizeFit_Fit_ThirdPersonSingular" xml:space="preserve">
|
||
<value>fits within</value>
|
||
</data>
|
||
<data name="ResizeFit_Stretch" xml:space="preserve">
|
||
<value>Stretch</value>
|
||
</data>
|
||
<data name="ResizeFit_Stretch_ThirdPersonSingular" xml:space="preserve">
|
||
<value>stretches to</value>
|
||
</data>
|
||
<data name="ResizeUnit_Centimeter" xml:space="preserve">
|
||
<value>Centimeters</value>
|
||
</data>
|
||
<data name="ResizeUnit_Inch" xml:space="preserve">
|
||
<value>Inches</value>
|
||
</data>
|
||
<data name="ResizeUnit_Percent" xml:space="preserve">
|
||
<value>Percent</value>
|
||
</data>
|
||
<data name="ResizeUnit_Pixel" xml:space="preserve">
|
||
<value>Pixels</value>
|
||
</data>
|
||
<data name="Resize_Tooltip" xml:space="preserve">
|
||
<value>Resize pictures</value>
|
||
</data>
|
||
<data name="Resize_Type" xml:space="preserve">
|
||
<value>Resize type</value>
|
||
</data>
|
||
<data name="Results_Close" xml:space="preserve">
|
||
<value>Close</value>
|
||
</data>
|
||
<data name="Results_MainInstruction" xml:space="preserve">
|
||
<value>Can't resize the following pictures</value>
|
||
</data>
|
||
<data name="Small" xml:space="preserve">
|
||
<value>Small</value>
|
||
</data>
|
||
<data name="Unit" xml:space="preserve">
|
||
<value>Unit</value>
|
||
</data>
|
||
<data name="ValueMustBeBetween" xml:space="preserve">
|
||
<value>Value must be between '{0}' and '{1}'.</value>
|
||
</data>
|
||
<data name="Version" xml:space="preserve">
|
||
<value>Version</value>
|
||
</data>
|
||
<data name="Width" xml:space="preserve">
|
||
<value>Width</value>
|
||
</data>
|
||
<data name="Open_settings" xml:space="preserve">
|
||
<value>Settings</value>
|
||
</data>
|
||
<data name="Input_RemoveMetadata" xml:space="preserve">
|
||
<value>Remove meta_data that doesn't affect rendering</value>
|
||
</data>
|
||
<data name="Image_Sizes" xml:space="preserve">
|
||
<value>Image sizes</value>
|
||
</data>
|
||
<data name="Input_ShrinkOnly.Content" xml:space="preserve">
|
||
<value>_Make pictures smaller but not larger</value>
|
||
</data>
|
||
<data name="Input_AiSuperResolution" xml:space="preserve">
|
||
<value>Super resolution</value>
|
||
</data>
|
||
<data name="Input_AiUnknownSize" xml:space="preserve">
|
||
<value>Unavailable</value>
|
||
</data>
|
||
<data name="Input_AiScaleFormat" xml:space="preserve">
|
||
<value>{0}×</value>
|
||
</data>
|
||
<data name="Input_AiScaleLabel" xml:space="preserve">
|
||
<value>Scale</value>
|
||
</data>
|
||
<data name="Input_AiCurrentLabel" xml:space="preserve">
|
||
<value>Current:</value>
|
||
</data>
|
||
<data name="Input_AiNewLabel" xml:space="preserve">
|
||
<value>New:</value>
|
||
</data>
|
||
<data name="Input_AiModelChecking" xml:space="preserve">
|
||
<value>Checking AI model availability...</value>
|
||
</data>
|
||
<data name="Input_AiModelNotAvailable" xml:space="preserve">
|
||
<value>AI model not downloaded. Click Download to get started.</value>
|
||
</data>
|
||
<data name="Input_AiModelDisabledByUser" xml:space="preserve">
|
||
<value>AI feature is disabled by system settings.</value>
|
||
</data>
|
||
<data name="Input_AiModelNotSupported" xml:space="preserve">
|
||
<value>AI feature is not supported on this system.</value>
|
||
</data>
|
||
<data name="Input_AiModelDownloading" xml:space="preserve">
|
||
<value>Downloading AI model...</value>
|
||
</data>
|
||
<data name="Input_AiModelDownloadFailed" xml:space="preserve">
|
||
<value>Failed to download AI model. Please try again.</value>
|
||
</data>
|
||
<data name="Input_AiModelDownloadButton" xml:space="preserve">
|
||
<value>Download</value>
|
||
</data>
|
||
<data name="Error_AiProcessingFailed" xml:space="preserve">
|
||
<value>AI super resolution processing failed: {0}</value>
|
||
</data>
|
||
<data name="Error_AiConversionFailed" xml:space="preserve">
|
||
<value>Failed to convert image format for AI processing.</value>
|
||
</data>
|
||
<data name="Error_AiScalingFailed" xml:space="preserve">
|
||
<value>AI scaling operation failed.</value>
|
||
</data>
|
||
<data name="Input_AiSuperResolutionDescription" xml:space="preserve">
|
||
<value>Upscale images using on-device AI</value>
|
||
</data>
|
||
|
||
<!-- CLI Processing messages -->
|
||
<data name="CLI_ProcessingFiles" xml:space="preserve">
|
||
<value>Processing {0} file(s)...</value>
|
||
</data>
|
||
<data name="CLI_ProgressFormat" xml:space="preserve">
|
||
<value>Progress: {0}% ({1}/{2})</value>
|
||
</data>
|
||
<data name="CLI_CompletedWithErrors" xml:space="preserve">
|
||
<value>Completed with {0} error(s):</value>
|
||
</data>
|
||
<data name="CLI_AllFilesProcessed" xml:space="preserve">
|
||
<value>All files processed successfully.</value>
|
||
</data>
|
||
<data name="CLI_WarningInvalidSizeIndex" xml:space="preserve">
|
||
<value>Warning: Invalid size index {0}. Using default.</value>
|
||
</data>
|
||
<data name="CLI_NoInputFiles" xml:space="preserve">
|
||
<value>No input files or pipe specified. Showing usage.</value>
|
||
</data>
|
||
|
||
<!-- CLI Config display -->
|
||
<data name="CLI_ConfigTitle" xml:space="preserve">
|
||
<value>ImageResizer - Current Configuration</value>
|
||
</data>
|
||
<data name="CLI_ConfigGeneralSettings" xml:space="preserve">
|
||
<value>General Settings:</value>
|
||
</data>
|
||
<data name="CLI_ConfigShrinkOnly" xml:space="preserve">
|
||
<value> Shrink Only: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigReplaceOriginal" xml:space="preserve">
|
||
<value> Replace Original: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigIgnoreOrientation" xml:space="preserve">
|
||
<value> Ignore Orientation: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigRemoveMetadata" xml:space="preserve">
|
||
<value> Remove Metadata: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigKeepDateModified" xml:space="preserve">
|
||
<value> Keep Date Modified: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigJpegQuality" xml:space="preserve">
|
||
<value> JPEG Quality: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigPngInterlace" xml:space="preserve">
|
||
<value> PNG Interlace: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigTiffCompress" xml:space="preserve">
|
||
<value> TIFF Compress: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigFilenameFormat" xml:space="preserve">
|
||
<value> Filename Format: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigCustomSize" xml:space="preserve">
|
||
<value>Custom Size:</value>
|
||
</data>
|
||
<data name="CLI_ConfigWidth" xml:space="preserve">
|
||
<value> Width: {0} {1}</value>
|
||
</data>
|
||
<data name="CLI_ConfigHeight" xml:space="preserve">
|
||
<value> Height: {0} {1}</value>
|
||
</data>
|
||
<data name="CLI_ConfigFitMode" xml:space="preserve">
|
||
<value> Fit Mode: {0}</value>
|
||
</data>
|
||
<data name="CLI_ConfigPresetSizes" xml:space="preserve">
|
||
<value>Preset Sizes: (* = currently selected)</value>
|
||
</data>
|
||
<data name="CLI_ConfigPresetSizeFormat" xml:space="preserve">
|
||
<value> [{0}]{1} {2}: {3}x{4} {5} ({6})</value>
|
||
</data>
|
||
<data name="CLI_ConfigCustomSelected" xml:space="preserve">
|
||
<value> [Custom]* {0}x{1} {2} ({3})</value>
|
||
</data>
|
||
|
||
<!-- CLI Usage help -->
|
||
<data name="CLI_UsageTitle" xml:space="preserve">
|
||
<value>ImageResizer - PowerToys Image Resizer CLI</value>
|
||
</data>
|
||
<data name="CLI_UsageLine" xml:space="preserve">
|
||
<value>Usage: PowerToys.ImageResizerCLI.exe [options] [files...]</value>
|
||
</data>
|
||
<data name="CLI_UsageOptions" xml:space="preserve">
|
||
<value>Options:</value>
|
||
</data>
|
||
<data name="CLI_UsageExamples" xml:space="preserve">
|
||
<value>Examples:</value>
|
||
</data>
|
||
<data name="CLI_UsageExampleHelp" xml:space="preserve">
|
||
<value> PowerToys.ImageResizerCLI.exe --help</value>
|
||
</data>
|
||
<data name="CLI_UsageExampleDimensions" xml:space="preserve">
|
||
<value> PowerToys.ImageResizerCLI.exe --width 800 --height 600 image.jpg</value>
|
||
</data>
|
||
<data name="CLI_UsageExamplePercent" xml:space="preserve">
|
||
<value> PowerToys.ImageResizerCLI.exe -w 50 -h 50 -u Percent *.jpg</value>
|
||
</data>
|
||
<data name="CLI_UsageExamplePreset" xml:space="preserve">
|
||
<value> PowerToys.ImageResizerCLI.exe --size 0 -d "C:\Output" photo.png</value>
|
||
</data>
|
||
|
||
<!-- CLI Option Descriptions -->
|
||
<data name="CLI_Option_Destination" xml:space="preserve">
|
||
<value>Set destination directory</value>
|
||
</data>
|
||
<data name="CLI_Option_FileName" xml:space="preserve">
|
||
<value>Set output filename format (%1=original name, %2=size name)</value>
|
||
</data>
|
||
<data name="CLI_Option_Files" xml:space="preserve">
|
||
<value>Image files to resize</value>
|
||
</data>
|
||
<data name="CLI_Option_Fit" xml:space="preserve">
|
||
<value>Set fit mode (Fill, Fit, Stretch)</value>
|
||
</data>
|
||
<data name="CLI_Option_Height" xml:space="preserve">
|
||
<value>Set height</value>
|
||
</data>
|
||
<data name="CLI_Option_Help" xml:space="preserve">
|
||
<value>Show help information</value>
|
||
</data>
|
||
<data name="CLI_Option_IgnoreOrientation" xml:space="preserve">
|
||
<value>Ignore image orientation</value>
|
||
</data>
|
||
<data name="CLI_Option_KeepDateModified" xml:space="preserve">
|
||
<value>Keep original date modified</value>
|
||
</data>
|
||
<data name="CLI_Option_Quality" xml:space="preserve">
|
||
<value>Set JPEG quality level (1-100)</value>
|
||
</data>
|
||
<data name="CLI_Option_Replace" xml:space="preserve">
|
||
<value>Replace original files</value>
|
||
</data>
|
||
<data name="CLI_Option_ShowConfig" xml:space="preserve">
|
||
<value>Show current configuration</value>
|
||
</data>
|
||
<data name="CLI_Option_ShrinkOnly" xml:space="preserve">
|
||
<value>Only shrink images, don't enlarge</value>
|
||
</data>
|
||
<data name="CLI_Option_RemoveMetadata" xml:space="preserve">
|
||
<value>Remove metadata from resized images</value>
|
||
</data>
|
||
<data name="CLI_Option_Size" xml:space="preserve">
|
||
<value>Use preset size by index (0-based)</value>
|
||
</data>
|
||
<data name="CLI_Option_Unit" xml:space="preserve">
|
||
<value>Set unit (Pixel, Percent, Inch, Centimeter)</value>
|
||
</data>
|
||
<data name="CLI_Option_Width" xml:space="preserve">
|
||
<value>Set width</value>
|
||
</data>
|
||
</root> |