Tiff options GUI + auto compression

This commit is contained in:
Ben Olden-Cooligan 2018-03-21 18:37:43 -04:00
parent 296c15e4f3
commit f98e3c97f8
6 changed files with 243 additions and 93 deletions

View File

@ -26,6 +26,7 @@ namespace NAPS2.ImportExport.Images
public enum TiffCompression
{
Auto,
Lzw,
Ccitt4,
None

View File

@ -36,35 +36,26 @@ namespace NAPS2.ImportExport.Images
{
var iparams = new EncoderParameters(1);
Encoder iparam = Encoder.Compression;
var iparamPara = new EncoderParameter(iparam, (long)GetEncoderValue(compression));
iparams.Param[0] = iparamPara;
using (var bitmap = scannedImageRenderer.Render(images[0]))
{
ValidateBitmap(bitmap);
var iparamPara = new EncoderParameter(iparam, (long)GetEncoderValue(compression, bitmap));
iparams.Param[0] = iparamPara;
bitmap.Save(location, codecInfo, iparams);
}
}
else if (images.Count > 1)
{
Encoder saveEncoder;
Encoder compressionEncoder;
EncoderParameter SaveEncodeParam;
EncoderParameter CompressionEncodeParam;
var encoderParams = new EncoderParameters(2);
saveEncoder = Encoder.SaveFlag;
compressionEncoder = Encoder.Compression;
// Save the first page (frame).
SaveEncodeParam = new EncoderParameter(saveEncoder, (long)EncoderValue.MultiFrame);
CompressionEncodeParam = new EncoderParameter(compressionEncoder, (long)EncoderValue.CompressionLZW);
encoderParams.Param[0] = CompressionEncodeParam;
encoderParams.Param[1] = SaveEncodeParam;
var saveEncoder = Encoder.SaveFlag;
var compressionEncoder = Encoder.Compression;
File.Delete(location);
using (var bitmap0 = scannedImageRenderer.Render(images[0]))
{
ValidateBitmap(bitmap0);
encoderParams.Param[0] = new EncoderParameter(compressionEncoder, (long)GetEncoderValue(compression, bitmap0));
encoderParams.Param[1] = new EncoderParameter(saveEncoder, (long)EncoderValue.MultiFrame); ;
bitmap0.Save(location, codecInfo, encoderParams);
for (int i = 1; i < images.Count; i++)
@ -79,20 +70,16 @@ namespace NAPS2.ImportExport.Images
return false;
}
SaveEncodeParam = new EncoderParameter(saveEncoder, (long)EncoderValue.FrameDimensionPage);
CompressionEncodeParam = new EncoderParameter(compressionEncoder,
(long)EncoderValue.CompressionLZW);
encoderParams.Param[0] = CompressionEncodeParam;
encoderParams.Param[1] = SaveEncodeParam;
using (var bitmap = scannedImageRenderer.Render(images[i]))
{
ValidateBitmap(bitmap);
encoderParams.Param[0] = new EncoderParameter(compressionEncoder, (long)GetEncoderValue(compression, bitmap));
encoderParams.Param[1] = new EncoderParameter(saveEncoder, (long)EncoderValue.FrameDimensionPage);
bitmap0.SaveAdd(bitmap, encoderParams);
}
}
SaveEncodeParam = new EncoderParameter(saveEncoder, (long)EncoderValue.Flush);
encoderParams.Param[0] = SaveEncodeParam;
encoderParams.Param[0] = new EncoderParameter(saveEncoder, (long)EncoderValue.Flush);
bitmap0.SaveAdd(encoderParams);
}
}
@ -107,7 +94,7 @@ namespace NAPS2.ImportExport.Images
}
private EncoderValue GetEncoderValue(TiffCompression compression)
private EncoderValue GetEncoderValue(TiffCompression compression, Bitmap bitmap)
{
switch (compression)
{
@ -115,8 +102,20 @@ namespace NAPS2.ImportExport.Images
return EncoderValue.CompressionNone;
case TiffCompression.Ccitt4:
return EncoderValue.CompressionCCITT4;
default:
case TiffCompression.Lzw:
return EncoderValue.CompressionLZW;
default:
if (bitmap.PixelFormat == PixelFormat.Format1bppIndexed
&& bitmap.Palette.Entries.Length == 2
&& bitmap.Palette.Entries[0].ToArgb() == Color.Black.ToArgb()
&& bitmap.Palette.Entries[1].ToArgb() == Color.White.ToArgb())
{
return EncoderValue.CompressionCCITT4;
}
else
{
return EncoderValue.CompressionLZW;
}
}
}

View File

@ -41,14 +41,20 @@ namespace NAPS2.WinForms
this.btnRestoreDefaults = new System.Windows.Forms.Button();
this.txtDefaultFilePath = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.linkPlaceholders = new System.Windows.Forms.LinkLabel();
this.txtJpegQuality = new System.Windows.Forms.TextBox();
this.tbJpegQuality = new System.Windows.Forms.TrackBar();
this.lblWarning = new System.Windows.Forms.Label();
this.btnChooseFolder = new System.Windows.Forms.Button();
this.cbSkipSavePrompt = new System.Windows.Forms.CheckBox();
this.label3 = new System.Windows.Forms.Label();
this.cmbTiffCompr = new System.Windows.Forms.ComboBox();
this.cbSinglePageTiff = new System.Windows.Forms.CheckBox();
this.groupJpeg = new System.Windows.Forms.GroupBox();
this.groupTiff = new System.Windows.Forms.GroupBox();
((System.ComponentModel.ISupportInitialize)(this.tbJpegQuality)).BeginInit();
this.groupJpeg.SuspendLayout();
this.groupTiff.SuspendLayout();
this.SuspendLayout();
//
// btnOK
@ -89,11 +95,6 @@ namespace NAPS2.WinForms
resources.ApplyResources(this.label1, "label1");
this.label1.Name = "label1";
//
// label2
//
resources.ApplyResources(this.label2, "label2");
this.label2.Name = "label2";
//
// linkPlaceholders
//
resources.ApplyResources(this.linkPlaceholders, "linkPlaceholders");
@ -133,27 +134,65 @@ namespace NAPS2.WinForms
this.cbSkipSavePrompt.Name = "cbSkipSavePrompt";
this.cbSkipSavePrompt.UseVisualStyleBackColor = true;
//
// label3
//
resources.ApplyResources(this.label3, "label3");
this.label3.Name = "label3";
//
// cmbTiffCompr
//
this.cmbTiffCompr.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbTiffCompr.FormattingEnabled = true;
resources.ApplyResources(this.cmbTiffCompr, "cmbTiffCompr");
this.cmbTiffCompr.Name = "cmbTiffCompr";
//
// cbSinglePageTiff
//
resources.ApplyResources(this.cbSinglePageTiff, "cbSinglePageTiff");
this.cbSinglePageTiff.Name = "cbSinglePageTiff";
this.cbSinglePageTiff.UseVisualStyleBackColor = true;
//
// groupJpeg
//
this.groupJpeg.Controls.Add(this.lblWarning);
this.groupJpeg.Controls.Add(this.tbJpegQuality);
this.groupJpeg.Controls.Add(this.txtJpegQuality);
resources.ApplyResources(this.groupJpeg, "groupJpeg");
this.groupJpeg.Name = "groupJpeg";
this.groupJpeg.TabStop = false;
//
// groupTiff
//
this.groupTiff.Controls.Add(this.label3);
this.groupTiff.Controls.Add(this.cmbTiffCompr);
this.groupTiff.Controls.Add(this.cbSinglePageTiff);
resources.ApplyResources(this.groupTiff, "groupTiff");
this.groupTiff.Name = "groupTiff";
this.groupTiff.TabStop = false;
//
// FImageSettings
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.groupTiff);
this.Controls.Add(this.groupJpeg);
this.Controls.Add(this.cbSkipSavePrompt);
this.Controls.Add(this.btnChooseFolder);
this.Controls.Add(this.lblWarning);
this.Controls.Add(this.txtJpegQuality);
this.Controls.Add(this.linkPlaceholders);
this.Controls.Add(this.label2);
this.Controls.Add(this.txtDefaultFilePath);
this.Controls.Add(this.label1);
this.Controls.Add(this.btnRestoreDefaults);
this.Controls.Add(this.cbRememberSettings);
this.Controls.Add(this.btnCancel);
this.Controls.Add(this.btnOK);
this.Controls.Add(this.tbJpegQuality);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FImageSettings";
((System.ComponentModel.ISupportInitialize)(this.tbJpegQuality)).EndInit();
this.groupJpeg.ResumeLayout(false);
this.groupJpeg.PerformLayout();
this.groupTiff.ResumeLayout(false);
this.groupTiff.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
@ -168,12 +207,16 @@ namespace NAPS2.WinForms
private System.Windows.Forms.Button btnRestoreDefaults;
private System.Windows.Forms.TextBox txtDefaultFilePath;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.LinkLabel linkPlaceholders;
private System.Windows.Forms.TextBox txtJpegQuality;
private System.Windows.Forms.TrackBar tbJpegQuality;
private System.Windows.Forms.Label lblWarning;
private System.Windows.Forms.Button btnChooseFolder;
private System.Windows.Forms.CheckBox cbSkipSavePrompt;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.ComboBox cmbTiffCompr;
private System.Windows.Forms.CheckBox cbSinglePageTiff;
private System.Windows.Forms.GroupBox groupJpeg;
private System.Windows.Forms.GroupBox groupTiff;
}
}

View File

@ -22,6 +22,7 @@ namespace NAPS2.WinForms
this.userConfigManager = userConfigManager;
this.dialogHelper = dialogHelper;
InitializeComponent();
AddEnumItems<TiffCompression>(cmbTiffCompr);
}
protected override void OnLoad(object sender, EventArgs e)
@ -31,7 +32,7 @@ namespace NAPS2.WinForms
.BottomToForm()
.Bind(txtJpegQuality, btnOK, btnCancel, btnChooseFolder)
.RightToForm()
.Bind(txtDefaultFilePath, tbJpegQuality, lblWarning)
.Bind(txtDefaultFilePath, tbJpegQuality, lblWarning, groupTiff, groupJpeg)
.WidthToForm()
.Activate();
@ -45,6 +46,8 @@ namespace NAPS2.WinForms
txtDefaultFilePath.Text = imageSettings.DefaultFileName;
cbSkipSavePrompt.Checked = imageSettings.SkipSavePrompt;
txtJpegQuality.Text = imageSettings.JpegQuality.ToString(CultureInfo.InvariantCulture);
cmbTiffCompr.SelectedIndex = (int) imageSettings.TiffCompression;
cbSinglePageTiff.Checked = imageSettings.SinglePageTiff;
}
private void UpdateEnabled()
@ -63,7 +66,9 @@ namespace NAPS2.WinForms
{
DefaultFileName = txtDefaultFilePath.Text,
SkipSavePrompt = cbSkipSavePrompt.Checked,
JpegQuality = tbJpegQuality.Value
JpegQuality = tbJpegQuality.Value,
TiffCompression = (TiffCompression)cmbTiffCompr.SelectedIndex,
SinglePageTiff = cbSinglePageTiff.Checked
};
imageSettingsContainer.ImageSettings = imageSettings;

View File

@ -123,7 +123,7 @@
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="btnOK.Location" type="System.Drawing.Point, System.Drawing">
<value>264, 204</value>
<value>276, 299</value>
</data>
<data name="btnOK.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
@ -145,13 +145,13 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>11</value>
<value>10</value>
</data>
<data name="btnCancel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnCancel.Location" type="System.Drawing.Point, System.Drawing">
<value>345, 204</value>
<value>357, 299</value>
</data>
<data name="btnCancel.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
@ -172,7 +172,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnCancel.ZOrder" xml:space="preserve">
<value>10</value>
<value>9</value>
</data>
<metadata name="ilProfileIcons.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
@ -181,7 +181,7 @@
<value>True</value>
</data>
<data name="cbRememberSettings.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 183</value>
<value>13, 278</value>
</data>
<data name="cbRememberSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>145, 17</value>
@ -202,13 +202,13 @@
<value>$this</value>
</data>
<data name="&gt;&gt;cbRememberSettings.ZOrder" xml:space="preserve">
<value>9</value>
<value>8</value>
</data>
<data name="btnRestoreDefaults.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="btnRestoreDefaults.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 204</value>
<value>12, 299</value>
</data>
<data name="btnRestoreDefaults.Size" type="System.Drawing.Size, System.Drawing">
<value>145, 23</value>
@ -229,13 +229,13 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnRestoreDefaults.ZOrder" xml:space="preserve">
<value>8</value>
<value>7</value>
</data>
<data name="txtDefaultFilePath.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 25</value>
</data>
<data name="txtDefaultFilePath.Size" type="System.Drawing.Size, System.Drawing">
<value>368, 20</value>
<value>380, 20</value>
</data>
<data name="txtDefaultFilePath.TabIndex" type="System.Int32, mscorlib">
<value>27</value>
@ -250,7 +250,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;txtDefaultFilePath.ZOrder" xml:space="preserve">
<value>6</value>
<value>5</value>
</data>
<data name="label1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -280,34 +280,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="label2.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="label2.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 97</value>
</data>
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
<value>68, 13</value>
</data>
<data name="label2.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="label2.Text" xml:space="preserve">
<value>Jpeg Quality:</value>
</data>
<data name="&gt;&gt;label2.Name" xml:space="preserve">
<value>label2</value>
</data>
<data name="&gt;&gt;label2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;label2.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="linkPlaceholders.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -337,7 +310,7 @@
<value>4</value>
</data>
<data name="txtJpegQuality.Location" type="System.Drawing.Point, System.Drawing">
<value>382, 113</value>
<value>376, 19</value>
</data>
<data name="txtJpegQuality.Size" type="System.Drawing.Size, System.Drawing">
<value>38, 20</value>
@ -355,16 +328,16 @@
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtJpegQuality.Parent" xml:space="preserve">
<value>$this</value>
<value>groupJpeg</value>
</data>
<data name="&gt;&gt;txtJpegQuality.ZOrder" xml:space="preserve">
<value>3</value>
<value>2</value>
</data>
<data name="tbJpegQuality.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="tbJpegQuality.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 113</value>
<value>6, 19</value>
</data>
<data name="tbJpegQuality.Size" type="System.Drawing.Size, System.Drawing">
<value>364, 45</value>
@ -379,16 +352,16 @@
<value>System.Windows.Forms.TrackBar, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tbJpegQuality.Parent" xml:space="preserve">
<value>$this</value>
<value>groupJpeg</value>
</data>
<data name="&gt;&gt;tbJpegQuality.ZOrder" xml:space="preserve">
<value>12</value>
<value>1</value>
</data>
<data name="lblWarning.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblWarning.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 145</value>
<value>6, 51</value>
</data>
<data name="lblWarning.Size" type="System.Drawing.Size, System.Drawing">
<value>408, 30</value>
@ -397,7 +370,7 @@
<value>33</value>
</data>
<data name="lblWarning.Text" xml:space="preserve">
<value>For high JPEG qualities (80+), use the Maximum Quality profile option for best results.</value>
<value>For high JPEG qualities (80+), also increase Image Quality in your profile for best results.</value>
</data>
<data name="&gt;&gt;lblWarning.Name" xml:space="preserve">
<value>lblWarning</value>
@ -406,16 +379,16 @@
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lblWarning.Parent" xml:space="preserve">
<value>$this</value>
<value>groupJpeg</value>
</data>
<data name="&gt;&gt;lblWarning.ZOrder" xml:space="preserve">
<value>2</value>
<value>0</value>
</data>
<data name="btnChooseFolder.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnChooseFolder.Location" type="System.Drawing.Point, System.Drawing">
<value>386, 24</value>
<value>398, 23</value>
</data>
<data name="btnChooseFolder.Size" type="System.Drawing.Size, System.Drawing">
<value>34, 22</value>
@ -436,7 +409,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnChooseFolder.ZOrder" xml:space="preserve">
<value>1</value>
<value>3</value>
</data>
<data name="cbSkipSavePrompt.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -466,6 +439,135 @@
<value>$this</value>
</data>
<data name="&gt;&gt;cbSkipSavePrompt.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="label3.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="label3.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 39</value>
</data>
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
<value>70, 13</value>
</data>
<data name="label3.TabIndex" type="System.Int32, mscorlib">
<value>37</value>
</data>
<data name="label3.Text" xml:space="preserve">
<value>Compression:</value>
</data>
<data name="&gt;&gt;label3.Name" xml:space="preserve">
<value>label3</value>
</data>
<data name="&gt;&gt;label3.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label3.Parent" xml:space="preserve">
<value>groupTiff</value>
</data>
<data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="cmbTiffCompr.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 55</value>
</data>
<data name="cmbTiffCompr.Size" type="System.Drawing.Size, System.Drawing">
<value>185, 21</value>
</data>
<data name="cmbTiffCompr.TabIndex" type="System.Int32, mscorlib">
<value>38</value>
</data>
<data name="&gt;&gt;cmbTiffCompr.Name" xml:space="preserve">
<value>cmbTiffCompr</value>
</data>
<data name="&gt;&gt;cmbTiffCompr.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbTiffCompr.Parent" xml:space="preserve">
<value>groupTiff</value>
</data>
<data name="&gt;&gt;cmbTiffCompr.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="cbSinglePageTiff.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="cbSinglePageTiff.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="cbSinglePageTiff.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 19</value>
</data>
<data name="cbSinglePageTiff.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 17</value>
</data>
<data name="cbSinglePageTiff.TabIndex" type="System.Int32, mscorlib">
<value>39</value>
</data>
<data name="cbSinglePageTiff.Text" xml:space="preserve">
<value>Single page files</value>
</data>
<data name="&gt;&gt;cbSinglePageTiff.Name" xml:space="preserve">
<value>cbSinglePageTiff</value>
</data>
<data name="&gt;&gt;cbSinglePageTiff.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cbSinglePageTiff.Parent" xml:space="preserve">
<value>groupTiff</value>
</data>
<data name="&gt;&gt;cbSinglePageTiff.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="groupJpeg.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 91</value>
</data>
<data name="groupJpeg.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 87</value>
</data>
<data name="groupJpeg.TabIndex" type="System.Int32, mscorlib">
<value>40</value>
</data>
<data name="groupJpeg.Text" xml:space="preserve">
<value>Jpeg Quality</value>
</data>
<data name="&gt;&gt;groupJpeg.Name" xml:space="preserve">
<value>groupJpeg</value>
</data>
<data name="&gt;&gt;groupJpeg.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupJpeg.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupJpeg.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="groupTiff.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 184</value>
</data>
<data name="groupTiff.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 87</value>
</data>
<data name="groupTiff.TabIndex" type="System.Int32, mscorlib">
<value>41</value>
</data>
<data name="groupTiff.Text" xml:space="preserve">
<value>Tiff Options</value>
</data>
<data name="&gt;&gt;groupTiff.Name" xml:space="preserve">
<value>groupTiff</value>
</data>
<data name="&gt;&gt;groupTiff.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupTiff.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupTiff.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
@ -475,7 +577,7 @@
<value>6, 13</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>432, 239</value>
<value>444, 334</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
@ -502,10 +604,10 @@
</value>
</data>
<data name="$this.MaximumSize" type="System.Drawing.Size, System.Drawing">
<value>800, 278</value>
<value>800, 373</value>
</data>
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>400, 278</value>
<value>400, 373</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Image Settings</value>
@ -514,12 +616,12 @@
<value>ilProfileIcons</value>
</data>
<data name="&gt;&gt;ilProfileIcons.Type" xml:space="preserve">
<value>NAPS2.WinForms.ILProfileIcons, NAPS2.Core, Version=5.0.2.26149, Culture=neutral, PublicKeyToken=null</value>
<value>NAPS2.WinForms.ILProfileIcons, NAPS2.Core, Version=5.7.1.32493, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>FImageSettings</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>NAPS2.WinForms.FormBase, NAPS2.Core, Version=5.0.2.26149, Culture=neutral, PublicKeyToken=null</value>
<value>NAPS2.WinForms.FormBase, NAPS2.Core, Version=5.7.1.32493, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@ -28,7 +28,7 @@ namespace NAPS2.WinForms
new LayoutManager(this)
.Bind(btnOK, btnCancel, cbShowOwnerPassword, cbShowUserPassword, btnChooseFolder)
.RightToForm()
.Bind(groupMetadata, groupProtection)
.Bind(groupMetadata, groupProtection, groupCompat, clbPerms)
.WidthToForm()
.Bind(txtDefaultFilePath, txtTitle, txtAuthor, txtSubject, txtKeywords, txtOwnerPassword, txtUserPassword)
.WidthToForm()