[TextExtractor]Rename PowerOCR to Text Extractor (#20178)

* [Image To Text]Rename PowerOCR to Image To Text

* fix spellchecker

* Rename to Text Extractor

* Missing mention

* Another missing mention
This commit is contained in:
Jaime Bernardo 2022-08-31 18:29:20 +01:00 committed by GitHub
parent 96f34ee4e9
commit 086eb58d80
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
24 changed files with 73 additions and 71 deletions

View File

@ -47,7 +47,7 @@ body:
- G-code Preview
- G-code Thumbnail
- PowerAccent
- PowerOCR
- TextExtractor
- PowerRename
- PowerToys Run
- Screen ruler

View File

@ -881,6 +881,7 @@ IMAGERESIZERCONTEXTMENU
IMAGERESIZEREXT
imageresizerinput
imageresizersettings
TEXTEXTRACTOR
imagingdevices
IMain
IMarkdown

View File

@ -63,7 +63,7 @@ Their fork of Wox was the base of PowerToys Run.
Initial base of jjw24's fork, which makes it the base of PowerToys Run.
### [Text-Grab](https://github.com/TheJoeFin/Text-Grab) - Joseph Finney
Joe helped develop and contribute to the Image to Text utility. It is directly based on his Text Grab application.
Joe helped develop and contribute to the Text Extractor utility. It is directly based on his Text Grab application.
## Microsoft community members

View File

@ -24,7 +24,7 @@ struct LogSettings
inline const static std::wstring fancyZonesOldLogPath = L"FancyZonesLogs\\"; // needed to clean up old logs
inline const static std::string shortcutGuideLoggerName = "shortcut-guide";
inline const static std::wstring shortcutGuideLogPath = L"ShortcutGuideLogs\\shortcut-guide-log.txt";
inline const static std::wstring powerOcrLogPath = L"Logs\\power-ocr-log.txt";
inline const static std::wstring powerOcrLogPath = L"Logs\\text-extractor-log.txt";
inline const static std::string keyboardManagerLoggerName = "keyboard-manager";
inline const static std::wstring keyboardManagerLogPath = L"Logs\\keyboard-manager-log.txt";
inline const static std::string findMyMouseLoggerName = "find-my-mouse";
@ -33,7 +33,7 @@ struct LogSettings
inline const static std::string imageResizerLoggerName = "imageresizer";
inline const static std::string powerRenameLoggerName = "powerrename";
inline const static std::string alwaysOnTopLoggerName = "always-on-top";
inline const static std::string powerOcrLoggerName = "power-ocr";
inline const static std::string powerOcrLoggerName = "TextExtractor";
inline const static std::wstring alwaysOnTopLogPath = L"always-on-top-log.txt";
inline const static int retention = 30;
std::wstring logLevel;

View File

@ -35,7 +35,7 @@ public partial class App : Application, IDisposable
_instanceMutex = new Mutex(true, @"Local\PowerToys_PowerOCR_InstanceMutex", out bool createdNew);
if (!createdNew)
{
Logger.LogWarning("Another running PowerOCR instance was detected. Exiting PowerOCR");
Logger.LogWarning("Another running TextExtractor instance was detected. Exiting TextExtractor");
_instanceMutex = null;
Environment.Exit(0);
return;
@ -46,11 +46,11 @@ public partial class App : Application, IDisposable
try
{
_ = int.TryParse(e.Args[0], out _powerToysRunnerPid);
Logger.LogInfo($"PowerOCR started from the PowerToys Runner. Runner pid={_powerToysRunnerPid}");
Logger.LogInfo($"TextExtractor started from the PowerToys Runner. Runner pid={_powerToysRunnerPid}");
RunnerHelper.WaitForPowerToysRunner(_powerToysRunnerPid, () =>
{
Logger.LogInfo("PowerToys Runner exited. Exiting PowerOCR");
Logger.LogInfo("PowerToys Runner exited. Exiting TextExtractor");
Environment.Exit(0);
});
var userSettings = new UserSettings(new Helpers.ThrottledActionInvoker());
@ -58,12 +58,12 @@ public partial class App : Application, IDisposable
}
catch (Exception ex)
{
Logger.LogError($"PowerOCR got an exception on start: {ex}");
Logger.LogError($"TextExtractor got an exception on start: {ex}");
}
}
else
{
Logger.LogInfo($"PowerOCR started detached from PowerToys Runner.");
Logger.LogInfo($"TextExtractor started detached from PowerToys Runner.");
_powerToysRunnerPid = -1;
var userSettings = new UserSettings(new Helpers.ThrottledActionInvoker());
keyboardMonitor = new KeyboardMonitor(userSettings);

View File

@ -14,7 +14,7 @@ namespace PowerOCR.Helpers
public static class Logger
{
private static readonly IFileSystem _fileSystem = new FileSystem();
private static readonly string ApplicationLogPath = Path.Combine(Constants.AppDataPath(), "PowerOCR\\Logs");
private static readonly string ApplicationLogPath = Path.Combine(Constants.AppDataPath(), "TextExtractor\\Logs");
static Logger()
{

View File

@ -5,7 +5,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:PowerOCR"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Title="PowerOCR"
Title="TextExtractor"
Width="800"
Height="450"
ShowActivated="False"

View File

@ -17,7 +17,7 @@ namespace PowerOCR.Settings
public class UserSettings : IUserSettings
{
private readonly ISettingsUtils _settingsUtils;
private const string PowerOcrModuleName = "PowerOCR";
private const string PowerOcrModuleName = "TextExtractor";
private const string DefaultActivationShortcut = "Win + Shift + O";
private const int MaxNumberOfRetry = 5;
private const int SettingsReadOnChangeDelayInMs = 300;
@ -56,7 +56,7 @@ namespace PowerOCR.Settings
if (!_settingsUtils.SettingsExists(PowerOcrModuleName))
{
Logger.LogInfo("PowerOCR settings.json was missing, creating a new one");
Logger.LogInfo("TextExtractor settings.json was missing, creating a new one");
var defaultPowerOcrSettings = new PowerOcrSettings();
defaultPowerOcrSettings.Save(_settingsUtils);
}

View File

@ -4,5 +4,5 @@
namespace PowerOcrConstants
{
// Name of the powertoy module.
inline const std::wstring ModuleKey = L"PowerOCR";
inline const std::wstring ModuleKey = L"TextExtractor";
}

View File

@ -117,10 +117,10 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="PowerOCR_Name" xml:space="preserve">
<value>PowerOCR</value>
<data name="TextExtractor_Name" xml:space="preserve">
<value>Text Extractor</value>
</data>
<data name="PowerOCR_Settings_Desc" xml:space="preserve">
<data name="TextExtractor_Settings_Desc" xml:space="preserve">
<value>This feature requires Windows 10 version 1903 or higher</value>
</data>
</root>

View File

@ -21,6 +21,7 @@ BOOL APIENTRY DllMain(HMODULE hModule,
{
case DLL_PROCESS_ATTACH:
Trace::RegisterProvider();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
@ -83,17 +84,17 @@ private:
}
catch (...)
{
Logger::error("Failed to initialize PowerOCR start shortcut");
Logger::error("Failed to initialize TextExtractor start shortcut");
}
}
else
{
Logger::info("PowerOCR settings are empty");
Logger::info("TextExtractor settings are empty");
}
if (!m_hotkey.key)
{
Logger::info("PowerOCR is going to use default shortcut");
Logger::info("TextExtractor is going to use default shortcut");
m_hotkey.win = true;
m_hotkey.alt = false;
m_hotkey.shift = true;
@ -109,7 +110,7 @@ private:
void launch_process()
{
Logger::trace(L"Starting PowerOCR process");
Logger::trace(L"Starting TextExtractor process");
unsigned long powertoys_pid = GetCurrentProcessId();
std::wstring executable_args = L"";
@ -122,11 +123,11 @@ private:
sei.lpParameters = executable_args.data();
if (ShellExecuteExW(&sei))
{
Logger::trace("Successfully started the PowerOCR process");
Logger::trace("Successfully started the TextExtractor process");
}
else
{
Logger::error( L"PowerOCR failed to start. {}", get_last_error_or_default(GetLastError()));
Logger::error( L"TextExtractor failed to start. {}", get_last_error_or_default(GetLastError()));
}
m_hProcess = sei.hProcess;
@ -153,9 +154,9 @@ private:
public:
PowerOCR()
{
app_name = GET_RESOURCE_STRING(IDS_POWEROCR_NAME);
app_name = GET_RESOURCE_STRING(IDS_TEXTEXTRACTOR_NAME);
app_key = PowerOcrConstants::ModuleKey;
LoggerHelpers::init_logger(app_key, L"ModuleInterface", "PowerOCR");
LoggerHelpers::init_logger(app_key, L"ModuleInterface", "TextExtractor");
m_hInvokeEvent = CreateDefaultEvent(CommonSharedConstants::SHOW_POWEROCR_SHARED_EVENT);
init_settings();
}
@ -171,7 +172,7 @@ public:
// Destroy the powertoy and free memory
virtual void destroy() override
{
Logger::trace("PowerOCR::destroy()");
Logger::trace("TextExtractor::destroy()");
delete this;
}
@ -193,9 +194,9 @@ public:
// Create a Settings object.
PowerToysSettings::Settings settings(hinstance, get_name());
settings.set_description(GET_RESOURCE_STRING(IDS_POWEROCR_SETTINGS_DESC));
settings.set_description(GET_RESOURCE_STRING(IDS_TEXTEXTRACTOR_SETTINGS_DESC));
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_PowerOCR");
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_TextExtractor");
return settings.serialize_to_buffer(buffer, buffer_size);
}
@ -227,7 +228,7 @@ public:
virtual void enable()
{
Logger::trace("PowerOCR::enable()");
Logger::trace("TextExtractor::enable()");
ResetEvent(m_hInvokeEvent);
launch_process();
m_enabled = true;
@ -236,7 +237,7 @@ public:
virtual void disable()
{
Logger::trace("PowerOCR::disable()");
Logger::trace("TextExtractor::disable()");
if (m_enabled)
{
ResetEvent(m_hInvokeEvent);
@ -251,7 +252,7 @@ public:
{
if (m_enabled)
{
Logger::trace(L"PowerOCR hotkey pressed");
Logger::trace(L"TextExtractor hotkey pressed");
if (!is_process_running())
{
launch_process();

View File

@ -5,7 +5,7 @@
//////////////////////////////
// Non-localizable
#define FILE_DESCRIPTION "PowerToys PowerOCR"
#define FILE_DESCRIPTION "PowerToys TextExtractor"
#define INTERNAL_NAME "PowerToys.PowerOCR"
#define ORIGINAL_FILENAME "PowerToys.PowerOCR.dll"

View File

@ -257,7 +257,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
private bool powerOCR = true;
[JsonPropertyName("PowerOCR")]
[JsonPropertyName("TextExtractor")]
public bool PowerOCR
{
get => powerOCR;

View File

@ -11,7 +11,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
{
public class PowerOcrSettings : BasePTModuleSettings, ISettingsConfig
{
public const string ModuleName = "PowerOCR";
public const string ModuleName = "TextExtractor";
[JsonPropertyName("properties")]
public PowerOcrProperties Properties { get; set; }

View File

@ -9,7 +9,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
{
public class SndPowerOcrSettings
{
[JsonPropertyName("PowerOCR")]
[JsonPropertyName("TextExtractor")]
public PowerOcrSettings Settings { get; set; }
public SndPowerOcrSettings()

View File

@ -123,7 +123,7 @@ namespace Microsoft.PowerToys.Settings.UI
case "KBM": StartupPage = typeof(Views.KeyboardManagerPage); break;
case "MouseUtils": StartupPage = typeof(Views.MouseUtilsPage); break;
case "PowerAccent": StartupPage = typeof(Views.PowerAccentPage); break;
case "PowerOCR": StartupPage = typeof(Views.PowerOcrPage); break;
case "TextExtractor": StartupPage = typeof(Views.PowerOcrPage); break;
case "PowerRename": StartupPage = typeof(Views.PowerRenamePage); break;
case "FileExplorer": StartupPage = typeof(Views.PowerPreviewPage); break;
case "ShortcutGuide": StartupPage = typeof(Views.ShortcutGuidePage); break;

View File

@ -16,7 +16,7 @@ namespace Microsoft.PowerToys.Settings.UI.OOBE.Enums
KBM,
MouseUtils,
PowerAccent,
PowerOCR,
TextExtractor,
PowerRename,
Run,
ShortcutGuide,

View File

@ -9,7 +9,7 @@
xmlns:controls="using:Microsoft.PowerToys.Settings.UI.Controls"
xmlns:toolkitcontrols="using:CommunityToolkit.WinUI.UI.Controls">
<controls:OOBEPageControl x:Uid="Oobe_PowerOCR"
<controls:OOBEPageControl x:Uid="Oobe_TextExtractor"
HeroImage="ms-appx:///Assets/Modules/OOBE/PowerOCR.gif">
<controls:OOBEPageControl.PageContent>
@ -17,19 +17,19 @@
<TextBlock x:Uid="Oobe_HowToUse"
Style="{ThemeResource OobeSubtitleStyle}" />
<controls:ShortcutWithTextLabelControl x:Name="HotkeyControl" x:Uid="Oobe_PowerOCR_HowToUse" />
<controls:ShortcutWithTextLabelControl x:Name="HotkeyControl" x:Uid="Oobe_TextExtractor_HowToUse" />
<TextBlock x:Uid="Oobe_TipsAndTricks"
Style="{ThemeResource OobeSubtitleStyle}"/>
<toolkitcontrols:MarkdownTextBlock Background="Transparent" x:Uid="Oobe_PowerOCR_TipsAndTricks" />
<toolkitcontrols:MarkdownTextBlock Background="Transparent" x:Uid="Oobe_TextExtractor_TipsAndTricks" />
<StackPanel Orientation="Horizontal" Spacing="12" Margin="0,24,0,0">
<Button x:Uid="OOBE_Settings"
Click="SettingsLaunchButton_Click"/>
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_PowerOCR" Style="{StaticResource TextButtonStyle}">
<TextBlock x:Uid="LearnMore_PowerOCR"
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_TextExtractor" Style="{StaticResource TextButtonStyle}">
<TextBlock x:Uid="LearnMore_TextExtractor"
TextWrapping="Wrap" />
</HyperlinkButton>
</StackPanel>

View File

@ -19,7 +19,7 @@ namespace Microsoft.PowerToys.Settings.UI.OOBE.Views
public OobePowerOCR()
{
this.InitializeComponent();
ViewModel = new OobePowerToysModule(OobeShellPage.OobeShellHandler.Modules[(int)PowerToysModules.PowerOCR]);
ViewModel = new OobePowerToysModule(OobeShellPage.OobeShellHandler.Modules[(int)PowerToysModules.TextExtractor]);
DataContext = ViewModel;
}

View File

@ -104,7 +104,7 @@
ShowAsMonochrome="False" />
</muxc:NavigationViewItem.Icon>
</muxc:NavigationViewItem>
<muxc:NavigationViewItem x:Uid="Shell_PowerOCR" Tag="PowerOCR">
<muxc:NavigationViewItem x:Uid="Shell_TextExtractor" Tag="TextExtractor">
<muxc:NavigationViewItem.Icon>
<BitmapIcon
UriSource="ms-appx:///Assets/FluentIcons/FluentIconsPowerOCR.png"

View File

@ -109,9 +109,9 @@ namespace Microsoft.PowerToys.Settings.UI.OOBE.Views
IsNew = true,
});
Modules.Insert((int)PowerToysModules.PowerOCR, new OobePowerToysModule()
Modules.Insert((int)PowerToysModules.TextExtractor, new OobePowerToysModule()
{
ModuleName = "PowerOCR",
ModuleName = "TextExtractor",
IsNew = true,
});
@ -191,7 +191,7 @@ namespace Microsoft.PowerToys.Settings.UI.OOBE.Views
case "KBM": NavigationFrame.Navigate(typeof(OobeKBM)); break;
case "PowerAccent": NavigationFrame.Navigate(typeof(OobePowerAccent)); break;
case "PowerRename": NavigationFrame.Navigate(typeof(OobePowerRename)); break;
case "PowerOCR": NavigationFrame.Navigate(typeof(OobePowerOCR)); break;
case "TextExtractor": NavigationFrame.Navigate(typeof(OobePowerOCR)); break;
case "FileExplorer": NavigationFrame.Navigate(typeof(OobeFileExplorer)); break;
case "ShortcutGuide": NavigationFrame.Navigate(typeof(OobeShortcutGuide)); break;
case "VideoConference": NavigationFrame.Navigate(typeof(OobeVideoConference)); break;

View File

@ -2328,38 +2328,38 @@ Activate by holding the key for the character you want to add an accent to, then
<data name="PowerAccent_ToolbarPosition_Right.Content" xml:space="preserve">
<value>Right</value>
</data>
<data name="LearnMore_PowerOcr.Text" xml:space="preserve">
<value>Learn more about PowerOCR</value>
<data name="LearnMore_TextExtractor.Text" xml:space="preserve">
<value>Learn more about Text Extractor</value>
</data>
<data name="PowerOCR.ModuleDescription" xml:space="preserve">
<value>PowerOCR is a convenient way to copy text from anywhere on screen</value>
<data name="TextExtractor.ModuleDescription" xml:space="preserve">
<value>Text Extractor is a convenient way to copy text from anywhere on screen</value>
</data>
<data name="PowerOCR.ModuleTitle" xml:space="preserve">
<value>PowerOCR</value>
<data name="TextExtractor.ModuleTitle" xml:space="preserve">
<value>Text Extractor</value>
</data>
<data name="PowerOCR_EnableToggleControl_HeaderText.Header" xml:space="preserve">
<value>Enable PowerOCR</value>
<data name="TextExtractor_EnableToggleControl_HeaderText.Header" xml:space="preserve">
<value>Enable Text Extractor</value>
</data>
<data name="Shell_PowerOcr.Content" xml:space="preserve">
<value>PowerOCR</value>
<data name="Shell_TextExtractor.Content" xml:space="preserve">
<value>Text Extractor</value>
</data>
<data name="Launch_PowerOCR.Content" xml:space="preserve">
<value>Launch PowerOCR</value>
<data name="Launch_TextExtractor.Content" xml:space="preserve">
<value>Launch Text Extractor</value>
</data>
<data name="Oobe_PowerOCR.Title" xml:space="preserve">
<value>PowerOCR</value>
<data name="Oobe_TextExtractor.Title" xml:space="preserve">
<value>Text Extractor</value>
</data>
<data name="Oobe_PowerOCR_HowToUse.Text" xml:space="preserve">
<value>to open PowerOCR and then selecting a region to copy the text from.</value>
<data name="Oobe_TextExtractor_HowToUse.Text" xml:space="preserve">
<value>to open Text Extractor and then selecting a region to copy the text from.</value>
</data>
<data name="Oobe_PowerOCR_TipsAndTricks.Text" xml:space="preserve">
<data name="Oobe_TextExtractor_TipsAndTricks.Text" xml:space="preserve">
<value>Hold the shift key to move the selection region around.</value>
</data>
<data name="PowerOCR.SecondaryLinksHeader" xml:space="preserve">
<data name="TextExtractor.SecondaryLinksHeader" xml:space="preserve">
<value>Attribution</value>
</data>
<data name="Oobe_PowerOCR.Description" xml:space="preserve">
<value>PowerOCR works like Snipping Tool, but copies the text out of the selected region using OCR and puts it on the clipboard.</value>
<data name="Oobe_TextExtractor.Description" xml:space="preserve">
<value>Text Extractor works like Snipping Tool, but copies the text out of the selected region using OCR and puts it on the clipboard.</value>
</data>
<data name="FileExplorerPreview_ToggleSwitch_Monaco_Try_Format.Description" xml:space="preserve">
<value>Applies to json and xml. Files remain unchanged.</value>

View File

@ -9,11 +9,11 @@
AutomationProperties.LandmarkType="Main"
mc:Ignorable="d">
<controls:SettingsPageControl x:Uid="PowerOCR" ModuleImageSource="ms-appx:///Assets/Modules/PowerOCR.png">
<controls:SettingsPageControl x:Uid="TextExtractor" ModuleImageSource="ms-appx:///Assets/Modules/PowerOCR.png">
<controls:SettingsPageControl.ModuleContent>
<StackPanel Orientation="Vertical">
<controls:Setting x:Uid="PowerOCR_EnableToggleControl_HeaderText">
<controls:Setting x:Uid="TextExtractor_EnableToggleControl_HeaderText">
<controls:Setting.Icon>
<BitmapIcon ShowAsMonochrome="False" UriSource="ms-appx:///Assets/FluentIcons/FluentIconsPowerOcr.png" />
</controls:Setting.Icon>
@ -35,7 +35,7 @@
</controls:SettingsPageControl.ModuleContent>
<controls:SettingsPageControl.PrimaryLinks>
<controls:PageLink x:Uid="LearnMore_PowerOcr" Link="https://aka.ms/PowerToysOverview_PowerOCR" />
<controls:PageLink x:Uid="LearnMore_TextExtractor" Link="https://aka.ms/PowerToysOverview_TextExtractor" />
</controls:SettingsPageControl.PrimaryLinks>
<controls:SettingsPageControl.SecondaryLinks>
<controls:PageLink Text="Based upon Joseph Finney's Text Grab" Link="https://github.com/TheJoeFin/Text-Grab"/>

View File

@ -109,7 +109,7 @@
</muxc:NavigationViewItem.Icon>
</muxc:NavigationViewItem>
<muxc:NavigationViewItem x:Uid="Shell_PowerOcr"
<muxc:NavigationViewItem x:Uid="Shell_TextExtractor"
helpers:NavHelper.NavigateTo="views:PowerOcrPage">
<muxc:NavigationViewItem.Icon>
<BitmapIcon UriSource="ms-appx:///Assets/FluentIcons/FluentIconsPowerOcr.png"