├── .gitignore ├── .python-version ├── LICENSE ├── README.md ├── README_EN.md ├── config.json ├── demo.yaml ├── docs ├── images │ ├── group.jpg │ ├── icon.ico │ ├── icon.png │ ├── logo.png │ └── qrcode.jpg ├── index.html ├── script.js └── style.css ├── libs ├── index.html └── katex │ ├── README.md │ ├── contrib │ ├── auto-render.js │ ├── auto-render.min.js │ ├── auto-render.mjs │ ├── copy-tex.js │ ├── copy-tex.min.js │ ├── copy-tex.mjs │ ├── mathtex-script-type.js │ ├── mathtex-script-type.min.js │ ├── mathtex-script-type.mjs │ ├── mhchem.js │ ├── mhchem.min.js │ ├── mhchem.mjs │ ├── render-a11y-string.js │ ├── render-a11y-string.min.js │ └── render-a11y-string.mjs │ ├── fonts │ ├── KaTeX_AMS-Regular.ttf │ ├── KaTeX_AMS-Regular.woff │ ├── KaTeX_AMS-Regular.woff2 │ ├── KaTeX_Caligraphic-Bold.ttf │ ├── KaTeX_Caligraphic-Bold.woff │ ├── KaTeX_Caligraphic-Bold.woff2 │ ├── KaTeX_Caligraphic-Regular.ttf │ ├── KaTeX_Caligraphic-Regular.woff │ ├── KaTeX_Caligraphic-Regular.woff2 │ ├── KaTeX_Fraktur-Bold.ttf │ ├── KaTeX_Fraktur-Bold.woff │ ├── KaTeX_Fraktur-Bold.woff2 │ ├── KaTeX_Fraktur-Regular.ttf │ ├── KaTeX_Fraktur-Regular.woff │ ├── KaTeX_Fraktur-Regular.woff2 │ ├── KaTeX_Main-Bold.ttf │ ├── KaTeX_Main-Bold.woff │ ├── KaTeX_Main-Bold.woff2 │ ├── KaTeX_Main-BoldItalic.ttf │ ├── KaTeX_Main-BoldItalic.woff │ ├── KaTeX_Main-BoldItalic.woff2 │ ├── KaTeX_Main-Italic.ttf │ ├── KaTeX_Main-Italic.woff │ ├── KaTeX_Main-Italic.woff2 │ ├── KaTeX_Main-Regular.ttf │ ├── KaTeX_Main-Regular.woff │ ├── KaTeX_Main-Regular.woff2 │ ├── KaTeX_Math-BoldItalic.ttf │ ├── KaTeX_Math-BoldItalic.woff │ ├── KaTeX_Math-BoldItalic.woff2 │ ├── KaTeX_Math-Italic.ttf │ ├── KaTeX_Math-Italic.woff │ ├── KaTeX_Math-Italic.woff2 │ ├── KaTeX_SansSerif-Bold.ttf │ ├── KaTeX_SansSerif-Bold.woff │ ├── KaTeX_SansSerif-Bold.woff2 │ ├── KaTeX_SansSerif-Italic.ttf │ ├── KaTeX_SansSerif-Italic.woff │ ├── KaTeX_SansSerif-Italic.woff2 │ ├── KaTeX_SansSerif-Regular.ttf │ ├── KaTeX_SansSerif-Regular.woff │ ├── KaTeX_SansSerif-Regular.woff2 │ ├── KaTeX_Script-Regular.ttf │ ├── KaTeX_Script-Regular.woff │ ├── KaTeX_Script-Regular.woff2 │ ├── KaTeX_Size1-Regular.ttf │ ├── KaTeX_Size1-Regular.woff │ ├── KaTeX_Size1-Regular.woff2 │ ├── KaTeX_Size2-Regular.ttf │ ├── KaTeX_Size2-Regular.woff │ ├── KaTeX_Size2-Regular.woff2 │ ├── KaTeX_Size3-Regular.ttf │ ├── KaTeX_Size3-Regular.woff │ ├── KaTeX_Size3-Regular.woff2 │ ├── KaTeX_Size4-Regular.ttf │ ├── KaTeX_Size4-Regular.woff │ ├── KaTeX_Size4-Regular.woff2 │ ├── KaTeX_Typewriter-Regular.ttf │ ├── KaTeX_Typewriter-Regular.woff │ └── KaTeX_Typewriter-Regular.woff2 │ ├── katex.css │ ├── katex.js │ ├── katex.min.css │ ├── katex.min.js │ └── katex.mjs ├── main.py ├── main.spec ├── models └── README.md ├── pyproject.toml ├── qfluentwidgets ├── __init__.py ├── _rc │ ├── __init__.py │ ├── i18n │ │ ├── qfluentwidgets.ar_AR.qm │ │ ├── qfluentwidgets.ar_AR.ts │ │ ├── qfluentwidgets.en_US.qm │ │ ├── qfluentwidgets.en_US.ts │ │ ├── qfluentwidgets.es_ES.qm │ │ ├── qfluentwidgets.es_ES.ts │ │ ├── qfluentwidgets.ru_RU.qm │ │ ├── qfluentwidgets.ru_RU.ts │ │ ├── qfluentwidgets.zh_CN.qm │ │ ├── qfluentwidgets.zh_CN.ts │ │ ├── qfluentwidgets.zh_HK.qm │ │ ├── qfluentwidgets.zh_HK.ts │ │ ├── qfluentwidgets.zh_TW.qm │ │ └── qfluentwidgets.zh_TW.ts │ ├── images │ │ ├── acrylic │ │ │ └── noise.png │ │ ├── check_box │ │ │ ├── Accept_black.svg │ │ │ ├── Accept_white.svg │ │ │ ├── PartialAccept_black.svg │ │ │ └── PartialAccept_white.svg │ │ ├── color_dialog │ │ │ ├── Clear_black.svg │ │ │ ├── Clear_white.svg │ │ │ └── HuePanel.png │ │ ├── controls │ │ │ ├── Acrylic.png │ │ │ ├── AnimatedIcon.png │ │ │ ├── AppBarButton.png │ │ │ ├── AppBarSeparator.png │ │ │ ├── AppBarToggleButton.png │ │ │ ├── AutoSuggestBox.png │ │ │ ├── BreadcrumbBar.png │ │ │ ├── Button.png │ │ │ ├── CalendarDatePicker.png │ │ │ ├── CalendarView.png │ │ │ ├── Canvas.png │ │ │ ├── Checkbox.png │ │ │ ├── Clipboard.png │ │ │ ├── ColorPaletteResources.png │ │ │ ├── ColorPicker.png │ │ │ ├── ComboBox.png │ │ │ ├── CommandBar.png │ │ │ ├── CommandBarFlyout.png │ │ │ ├── ConnectedAnimation.png │ │ │ ├── ContentDialog.png │ │ │ ├── DataGrid.png │ │ │ ├── DatePicker.png │ │ │ ├── DropDownButton.png │ │ │ ├── EasingFunction.png │ │ │ ├── Expander.png │ │ │ ├── FlipView.png │ │ │ ├── Flyout.png │ │ │ ├── Grid.png │ │ │ ├── GridView.png │ │ │ ├── HyperlinkButton.png │ │ │ ├── IconElement.png │ │ │ ├── Image.png │ │ │ ├── InfoBadge.png │ │ │ ├── InfoBar.png │ │ │ ├── Line.png │ │ │ ├── ListBox.png │ │ │ ├── ListView.png │ │ │ ├── MediaPlayerElement.png │ │ │ ├── MenuBar.png │ │ │ ├── MenuFlyout.png │ │ │ ├── NavigationView.png │ │ │ ├── NumberBox.png │ │ │ ├── PasswordBox.png │ │ │ ├── PersonPicture.png │ │ │ ├── PipsPager.png │ │ │ ├── Pivot.png │ │ │ ├── ProgressBar.png │ │ │ ├── ProgressRing.png │ │ │ ├── RadioButton.png │ │ │ ├── RadioButtons.png │ │ │ ├── RatingControl.png │ │ │ ├── RelativePanel.png │ │ │ ├── RepeatButton.png │ │ │ ├── RichEditBox.png │ │ │ ├── RichTextBlock.png │ │ │ ├── ScrollViewer.png │ │ │ ├── Slider.png │ │ │ ├── SplitButton.png │ │ │ ├── StackPanel.png │ │ │ ├── TabView.png │ │ │ ├── TeachingTip.png │ │ │ ├── TextBlock.png │ │ │ ├── TextBox.png │ │ │ ├── TimePicker.png │ │ │ ├── TitleBar.png │ │ │ ├── ToggleButton.png │ │ │ ├── ToggleSplitButton.png │ │ │ ├── ToggleSwitch.png │ │ │ ├── ToolTip.png │ │ │ ├── TreeView.png │ │ │ ├── VariableSizedWrapGrid.png │ │ │ ├── VerticalLine.png │ │ │ └── Viewbox.png │ │ ├── folder_list_dialog │ │ │ ├── Add_black.png │ │ │ ├── Add_white.png │ │ │ ├── Close_black.png │ │ │ └── Close_white.png │ │ ├── icons │ │ │ ├── AcceptMedium_black.svg │ │ │ ├── AcceptMedium_white.svg │ │ │ ├── Accept_black.svg │ │ │ ├── Accept_white.svg │ │ │ ├── AddTo_black.svg │ │ │ ├── AddTo_white.svg │ │ │ ├── Add_black.svg │ │ │ ├── Add_white.svg │ │ │ ├── Airplane_black.svg │ │ │ ├── Airplane_white.svg │ │ │ ├── Album_black.svg │ │ │ ├── Album_white.svg │ │ │ ├── Alignment_black.svg │ │ │ ├── Alignment_white.svg │ │ │ ├── Application_black.svg │ │ │ ├── Application_white.svg │ │ │ ├── Asterisk_black.svg │ │ │ ├── Asterisk_white.svg │ │ │ ├── BackToWindow_black.svg │ │ │ ├── BackToWindow_white.svg │ │ │ ├── BackgroundColor_black.svg │ │ │ ├── BackgroundColor_white.svg │ │ │ ├── Basketball_black.svg │ │ │ ├── Basketball_white.svg │ │ │ ├── Bluetooth_black.svg │ │ │ ├── Bluetooth_white.svg │ │ │ ├── BookShelf_black.svg │ │ │ ├── BookShelf_white.svg │ │ │ ├── Brightness_black.svg │ │ │ ├── Brightness_white.svg │ │ │ ├── Broom_black.svg │ │ │ ├── Broom_white.svg │ │ │ ├── Brush_black.svg │ │ │ ├── Brush_white.svg │ │ │ ├── Bus_black.svg │ │ │ ├── Bus_white.svg │ │ │ ├── Cafe_black.svg │ │ │ ├── Cafe_white.svg │ │ │ ├── Calendar_black.svg │ │ │ ├── Calendar_white.svg │ │ │ ├── Calories_black.svg │ │ │ ├── Calories_white.svg │ │ │ ├── Camera_black.svg │ │ │ ├── Camera_white.svg │ │ │ ├── CancelMedium_black.svg │ │ │ ├── CancelMedium_white.svg │ │ │ ├── Cancel_black.svg │ │ │ ├── Cancel_white.svg │ │ │ ├── Car_black.svg │ │ │ ├── Car_white.svg │ │ │ ├── CareDownSolid_black.svg │ │ │ ├── CareDownSolid_white.svg │ │ │ ├── CareLeftSolid_black.svg │ │ │ ├── CareLeftSolid_white.svg │ │ │ ├── CareRightSolid_black.svg │ │ │ ├── CareRightSolid_white.svg │ │ │ ├── CareUpSolid_black.svg │ │ │ ├── CareUpSolid_white.svg │ │ │ ├── Certificate_black.svg │ │ │ ├── Certificate_white.svg │ │ │ ├── Chat_black.svg │ │ │ ├── Chat_white.svg │ │ │ ├── CheckBox_black.svg │ │ │ ├── CheckBox_white.svg │ │ │ ├── ChevronDownMed_black.svg │ │ │ ├── ChevronDownMed_white.svg │ │ │ ├── ChevronDown_black.svg │ │ │ ├── ChevronDown_white.svg │ │ │ ├── ChevronRightMed_black.svg │ │ │ ├── ChevronRightMed_white.svg │ │ │ ├── ChevronRight_black.svg │ │ │ ├── ChevronRight_white.svg │ │ │ ├── ClearSelection_black.svg │ │ │ ├── ClearSelection_white.svg │ │ │ ├── ClippingTool_black.svg │ │ │ ├── ClippingTool_white.svg │ │ │ ├── Close_black.svg │ │ │ ├── Close_white.svg │ │ │ ├── CloudDownload_black.svg │ │ │ ├── CloudDownload_white.svg │ │ │ ├── Cloud_black.svg │ │ │ ├── Cloud_white.svg │ │ │ ├── Code_black.svg │ │ │ ├── Code_white.svg │ │ │ ├── CommandPrompt_black.svg │ │ │ ├── CommandPrompt_white.svg │ │ │ ├── Completed_black.svg │ │ │ ├── Completed_white.svg │ │ │ ├── Connect_black.svg │ │ │ ├── Connect_white.svg │ │ │ ├── Constract_black.svg │ │ │ ├── Constract_white.svg │ │ │ ├── Copy_black.svg │ │ │ ├── Copy_white.svg │ │ │ ├── Cut_black.svg │ │ │ ├── Cut_white.svg │ │ │ ├── DateTime_black.svg │ │ │ ├── DateTime_white.svg │ │ │ ├── Delete_black.svg │ │ │ ├── Delete_white.svg │ │ │ ├── DeveloperTools_black.svg │ │ │ ├── DeveloperTools_white.svg │ │ │ ├── DictionaryAdd_black.svg │ │ │ ├── DictionaryAdd_white.svg │ │ │ ├── Dictionary_black.svg │ │ │ ├── Dictionary_white.svg │ │ │ ├── Document_black.svg │ │ │ ├── Document_white.svg │ │ │ ├── Down_black.svg │ │ │ ├── Down_white.svg │ │ │ ├── Download_black.svg │ │ │ ├── Download_white.svg │ │ │ ├── Edit_black.svg │ │ │ ├── Edit_white.svg │ │ │ ├── Education_black.svg │ │ │ ├── Education_white.svg │ │ │ ├── Embed_black.svg │ │ │ ├── Embed_white.svg │ │ │ ├── EmojiTabSymbols_black.svg │ │ │ ├── EmojiTabSymbols_white.svg │ │ │ ├── EraseTool_black.svg │ │ │ ├── EraseTool_white.svg │ │ │ ├── ExpressiveInputEntry_black.svg │ │ │ ├── ExpressiveInputEntry_white.svg │ │ │ ├── Feedback_black.svg │ │ │ ├── Feedback_white.svg │ │ │ ├── Filter_black.svg │ │ │ ├── Filter_white.svg │ │ │ ├── Fingerprint_black.svg │ │ │ ├── Fingerprint_white.svg │ │ │ ├── FitPage_black.svg │ │ │ ├── FitPage_white.svg │ │ │ ├── Flag_black.svg │ │ │ ├── Flag_white.svg │ │ │ ├── FolderAdd_black.svg │ │ │ ├── FolderAdd_white.svg │ │ │ ├── Folder_black.svg │ │ │ ├── Folder_white.svg │ │ │ ├── FontIncrease_black.svg │ │ │ ├── FontIncrease_white.svg │ │ │ ├── FontSize_black.svg │ │ │ ├── FontSize_white.svg │ │ │ ├── Font_black.svg │ │ │ ├── Font_white.svg │ │ │ ├── Frigid_black.svg │ │ │ ├── Frigid_white.svg │ │ │ ├── FullScreen_black.svg │ │ │ ├── FullScreen_white.svg │ │ │ ├── Game_black.svg │ │ │ ├── Game_white.svg │ │ │ ├── GitHub_black.svg │ │ │ ├── GitHub_white.svg │ │ │ ├── Globe_black.svg │ │ │ ├── Globe_white.svg │ │ │ ├── Headphone_black.svg │ │ │ ├── Headphone_white.svg │ │ │ ├── Heart_black.svg │ │ │ ├── Heart_white.svg │ │ │ ├── Help_black.svg │ │ │ ├── Help_white.svg │ │ │ ├── Hide_black.svg │ │ │ ├── Hide_white.svg │ │ │ ├── Highlight_black.svg │ │ │ ├── Highlight_white.svg │ │ │ ├── History_black.svg │ │ │ ├── History_white.svg │ │ │ ├── HomeFill_black.svg │ │ │ ├── HomeFill_white.svg │ │ │ ├── Home_black.svg │ │ │ ├── Home_white.svg │ │ │ ├── IOT_black.svg │ │ │ ├── IOT_white.svg │ │ │ ├── ImageExport_black.svg │ │ │ ├── ImageExport_white.svg │ │ │ ├── Info_black.svg │ │ │ ├── Info_white.svg │ │ │ ├── Label_black.svg │ │ │ ├── Label_white.svg │ │ │ ├── Language_black.svg │ │ │ ├── Language_white.svg │ │ │ ├── Layout_black.svg │ │ │ ├── Layout_white.svg │ │ │ ├── Leaf_black.svg │ │ │ ├── Leaf_white.svg │ │ │ ├── LeftArrow_black.svg │ │ │ ├── LeftArrow_white.svg │ │ │ ├── LibraryFill_black.svg │ │ │ ├── LibraryFill_white.svg │ │ │ ├── Link_black.svg │ │ │ ├── Link_white.svg │ │ │ ├── Mail_black.svg │ │ │ ├── Mail_white.svg │ │ │ ├── Market_black.svg │ │ │ ├── Market_white.svg │ │ │ ├── Media_black.svg │ │ │ ├── Media_white.svg │ │ │ ├── Megaphone_black.svg │ │ │ ├── Megaphone_white.svg │ │ │ ├── Menu_black copy.svg │ │ │ ├── Menu_black.svg │ │ │ ├── Menu_white copy.svg │ │ │ ├── Menu_white.svg │ │ │ ├── Message_black.svg │ │ │ ├── Message_white.svg │ │ │ ├── Microphone_black.svg │ │ │ ├── Microphone_white.svg │ │ │ ├── Minimize_black.svg │ │ │ ├── Minimize_white.svg │ │ │ ├── MixVolumes_black.svg │ │ │ ├── MixVolumes_white.svg │ │ │ ├── More_black.svg │ │ │ ├── More_white.svg │ │ │ ├── Move_black.svg │ │ │ ├── Move_white.svg │ │ │ ├── Movie_black.svg │ │ │ ├── Movie_white.svg │ │ │ ├── MusicFolder_black.svg │ │ │ ├── MusicFolder_white.svg │ │ │ ├── Music_black.svg │ │ │ ├── Music_white.svg │ │ │ ├── Mute_black.svg │ │ │ ├── Mute_white.svg │ │ │ ├── PageLeft_black.svg │ │ │ ├── PageLeft_white.svg │ │ │ ├── PageRight_black.svg │ │ │ ├── PageRight_white.svg │ │ │ ├── Palette_black.svg │ │ │ ├── Palette_white.svg │ │ │ ├── Paste_black.svg │ │ │ ├── Paste_white.svg │ │ │ ├── PauseBold_black.svg │ │ │ ├── PauseBold_white.svg │ │ │ ├── Pause_black.svg │ │ │ ├── Pause_white.svg │ │ │ ├── PencilInk_black.svg │ │ │ ├── PencilInk_white.svg │ │ │ ├── People_black.svg │ │ │ ├── People_white.svg │ │ │ ├── Phone_black.svg │ │ │ ├── Phone_white.svg │ │ │ ├── Photo_black.svg │ │ │ ├── Photo_white.svg │ │ │ ├── PieSingle_black.svg │ │ │ ├── PieSingle_white.svg │ │ │ ├── Pin_black.svg │ │ │ ├── Pin_white.svg │ │ │ ├── PlaySolid_black.svg │ │ │ ├── PlaySolid_white.svg │ │ │ ├── Play_black.svg │ │ │ ├── Play_white.svg │ │ │ ├── PowerButton_black.svg │ │ │ ├── PowerButton_white.svg │ │ │ ├── Print_black.svg │ │ │ ├── Print_white.svg │ │ │ ├── Projector_black.svg │ │ │ ├── Projector_white.svg │ │ │ ├── QRCode_black.svg │ │ │ ├── QRCode_white.svg │ │ │ ├── Question_black.svg │ │ │ ├── Question_white.svg │ │ │ ├── QuickNote_black.svg │ │ │ ├── QuickNote_white.svg │ │ │ ├── QuietHours_black.svg │ │ │ ├── QuietHours_white.svg │ │ │ ├── RemoveFrom_black.svg │ │ │ ├── RemoveFrom_white.svg │ │ │ ├── Remove_black.svg │ │ │ ├── Remove_white.svg │ │ │ ├── Return_black.svg │ │ │ ├── Return_white.svg │ │ │ ├── RightArrow_black.svg │ │ │ ├── RightArrow_white.svg │ │ │ ├── Ringer_black.svg │ │ │ ├── Ringer_white.svg │ │ │ ├── Robot_black.svg │ │ │ ├── Robot_white.svg │ │ │ ├── Rotate_black.svg │ │ │ ├── Rotate_white.svg │ │ │ ├── SaveAs_black.svg │ │ │ ├── SaveAs_white.svg │ │ │ ├── SaveCopy_black.svg │ │ │ ├── SaveCopy_white.svg │ │ │ ├── Save_black.svg │ │ │ ├── Save_white.svg │ │ │ ├── Scroll_black.svg │ │ │ ├── Scroll_white.svg │ │ │ ├── SearchMirror_black.svg │ │ │ ├── SearchMirror_white.svg │ │ │ ├── Search_black.svg │ │ │ ├── Search_white.svg │ │ │ ├── SendFill_black.svg │ │ │ ├── SendFill_white.svg │ │ │ ├── Send_black.svg │ │ │ ├── Send_white.svg │ │ │ ├── Setting_black.svg │ │ │ ├── Setting_white.svg │ │ │ ├── Share_black.svg │ │ │ ├── Share_white.svg │ │ │ ├── ShoppingCart_black.svg │ │ │ ├── ShoppingCart_white.svg │ │ │ ├── SkipBack_black.svg │ │ │ ├── SkipBack_white.svg │ │ │ ├── SkipForward_black.svg │ │ │ ├── SkipForward_white.svg │ │ │ ├── Speakers_black.svg │ │ │ ├── Speakers_white.svg │ │ │ ├── SpeedHigh_black.svg │ │ │ ├── SpeedHigh_white.svg │ │ │ ├── SpeedMedium_black.svg │ │ │ ├── SpeedMedium_white.svg │ │ │ ├── SpeedOff_black.svg │ │ │ ├── SpeedOff_white.svg │ │ │ ├── Stopwatch_black.svg │ │ │ ├── Stopwatch_white.svg │ │ │ ├── Sync_black.svg │ │ │ ├── Sync_white.svg │ │ │ ├── Tag_black.svg │ │ │ ├── Tag_white.svg │ │ │ ├── Tiles_black.svg │ │ │ ├── Tiles_white.svg │ │ │ ├── Train_black.svg │ │ │ ├── Train_white.svg │ │ │ ├── Transparent_black.svg │ │ │ ├── Transparent_white.svg │ │ │ ├── Unit_black.svg │ │ │ ├── Unit_white.svg │ │ │ ├── Unpin_black.svg │ │ │ ├── Unpin_white.svg │ │ │ ├── Up_black.svg │ │ │ ├── Up_white.svg │ │ │ ├── Update_black.svg │ │ │ ├── Update_white.svg │ │ │ ├── VPN_black.svg │ │ │ ├── VPN_white.svg │ │ │ ├── Video_black.svg │ │ │ ├── Video_white.svg │ │ │ ├── View_black.svg │ │ │ ├── View_white.svg │ │ │ ├── Volume_black.svg │ │ │ ├── Volume_white.svg │ │ │ ├── Wifi_black.svg │ │ │ ├── Wifi_white.svg │ │ │ ├── ZipFolder_black.svg │ │ │ ├── ZipFolder_white.svg │ │ │ ├── ZoomIn_black.svg │ │ │ ├── ZoomIn_white.svg │ │ │ ├── ZoomOut_black.svg │ │ │ ├── ZoomOut_white.svg │ │ │ ├── Zoom_black.svg │ │ │ └── Zoom_white.svg │ │ ├── info_bar │ │ │ ├── Error_dark.svg │ │ │ ├── Error_light.svg │ │ │ ├── Info_dark.svg │ │ │ ├── Info_light.svg │ │ │ ├── Success_dark.svg │ │ │ ├── Success_light.svg │ │ │ ├── Warning_dark.svg │ │ │ └── Warning_light.svg │ │ ├── logo.png │ │ ├── spin_box │ │ │ ├── Down_black.svg │ │ │ ├── Down_white.svg │ │ │ ├── Up_black.svg │ │ │ └── Up_white.svg │ │ ├── table_view │ │ │ ├── Down_black.svg │ │ │ ├── Down_white.svg │ │ │ ├── Up_black.svg │ │ │ └── Up_white.svg │ │ └── tree_view │ │ │ ├── TreeViewClose_black.svg │ │ │ ├── TreeViewClose_white.svg │ │ │ ├── TreeViewOpen_black.svg │ │ │ └── TreeViewOpen_white.svg │ ├── qss │ │ ├── dark │ │ │ ├── button.qss │ │ │ ├── calendar_picker.qss │ │ │ ├── card_widget.qss │ │ │ ├── check_box.qss │ │ │ ├── color_dialog.qss │ │ │ ├── combo_box.qss │ │ │ ├── dialog.qss │ │ │ ├── expand_setting_card.qss │ │ │ ├── flip_view.qss │ │ │ ├── fluent_window.qss │ │ │ ├── folder_list_dialog.qss │ │ │ ├── info_badge.qss │ │ │ ├── info_bar.qss │ │ │ ├── label.qss │ │ │ ├── line_edit.qss │ │ │ ├── list_view.qss │ │ │ ├── media_player.qss │ │ │ ├── menu.qss │ │ │ ├── message_dialog.qss │ │ │ ├── navigation_interface.qss │ │ │ ├── pips_pager.qss │ │ │ ├── pivot.qss │ │ │ ├── setting_card.qss │ │ │ ├── setting_card_group.qss │ │ │ ├── slider.qss │ │ │ ├── spin_box.qss │ │ │ ├── state_tool_tip.qss │ │ │ ├── switch_button.qss │ │ │ ├── tab_view.qss │ │ │ ├── table_view.qss │ │ │ ├── teaching_tip.qss │ │ │ ├── time_picker.qss │ │ │ ├── tool_tip.qss │ │ │ └── tree_view.qss │ │ └── light │ │ │ ├── button.qss │ │ │ ├── calendar_picker.qss │ │ │ ├── card_widget.qss │ │ │ ├── check_box.qss │ │ │ ├── color_dialog.qss │ │ │ ├── combo_box.qss │ │ │ ├── dialog.qss │ │ │ ├── expand_setting_card.qss │ │ │ ├── flip_view.qss │ │ │ ├── fluent_window.qss │ │ │ ├── folder_list_dialog.qss │ │ │ ├── info_badge.qss │ │ │ ├── info_bar.qss │ │ │ ├── label.qss │ │ │ ├── line_edit.qss │ │ │ ├── list_view.qss │ │ │ ├── media_player.qss │ │ │ ├── menu.qss │ │ │ ├── message_dialog.qss │ │ │ ├── navigation_interface.qss │ │ │ ├── pips_pager.qss │ │ │ ├── pivot.qss │ │ │ ├── setting_card.qss │ │ │ ├── setting_card_group.qss │ │ │ ├── slider.qss │ │ │ ├── spin_box.qss │ │ │ ├── state_tool_tip.qss │ │ │ ├── switch_button.qss │ │ │ ├── tab_view.qss │ │ │ ├── table_view.qss │ │ │ ├── teaching_tip.qss │ │ │ ├── time_picker.qss │ │ │ ├── tool_tip.qss │ │ │ └── tree_view.qss │ ├── resource.py │ └── resource.qrc ├── common │ ├── __init__.py │ ├── animation.py │ ├── auto_wrap.py │ ├── color.py │ ├── config.py │ ├── exception_handler.py │ ├── font.py │ ├── icon.py │ ├── image_utils.py │ ├── overload.py │ ├── router.py │ ├── screen.py │ ├── smooth_scroll.py │ ├── style_sheet.py │ ├── theme_listener.py │ └── translator.py ├── components │ ├── __init__.py │ ├── date_time │ │ ├── __init__.py │ │ ├── calendar_picker.py │ │ ├── calendar_view.py │ │ ├── date_picker.py │ │ ├── fast_calendar_view.py │ │ ├── picker_base.py │ │ └── time_picker.py │ ├── dialog_box │ │ ├── __init__.py │ │ ├── color_dialog.py │ │ ├── dialog.py │ │ ├── folder_list_dialog.py │ │ ├── mask_dialog_base.py │ │ ├── message_box_base.py │ │ └── message_dialog.py │ ├── layout │ │ ├── __init__.py │ │ ├── expand_layout.py │ │ ├── flow_layout.py │ │ └── v_box_layout.py │ ├── material │ │ ├── __init__.py │ │ ├── acrylic_combo_box.py │ │ ├── acrylic_flyout.py │ │ ├── acrylic_line_edit.py │ │ ├── acrylic_menu.py │ │ ├── acrylic_tool_tip.py │ │ └── acrylic_widget.py │ ├── navigation │ │ ├── __init__.py │ │ ├── breadcrumb.py │ │ ├── navigation_bar.py │ │ ├── navigation_interface.py │ │ ├── navigation_panel.py │ │ ├── navigation_widget.py │ │ ├── pivot.py │ │ └── segmented_widget.py │ ├── settings │ │ ├── __init__.py │ │ ├── custom_color_setting_card.py │ │ ├── expand_setting_card.py │ │ ├── folder_list_setting_card.py │ │ ├── options_setting_card.py │ │ ├── setting_card.py │ │ └── setting_card_group.py │ └── widgets │ │ ├── __init__.py │ │ ├── acrylic_label.py │ │ ├── button.py │ │ ├── card_widget.py │ │ ├── check_box.py │ │ ├── combo_box.py │ │ ├── command_bar.py │ │ ├── cycle_list_widget.py │ │ ├── flip_view.py │ │ ├── flyout.py │ │ ├── frameless_window.py │ │ ├── icon_widget.py │ │ ├── info_badge.py │ │ ├── info_bar.py │ │ ├── label.py │ │ ├── line_edit.py │ │ ├── list_view.py │ │ ├── menu.py │ │ ├── pips_pager.py │ │ ├── progress_bar.py │ │ ├── progress_ring.py │ │ ├── scroll_area.py │ │ ├── scroll_bar.py │ │ ├── separator.py │ │ ├── slider.py │ │ ├── spin_box.py │ │ ├── stacked_widget.py │ │ ├── state_tool_tip.py │ │ ├── switch_button.py │ │ ├── tab_view.py │ │ ├── table_view.py │ │ ├── teaching_tip.py │ │ ├── tool_tip.py │ │ └── tree_view.py ├── multimedia │ ├── __init__.py │ ├── media_play_bar.py │ ├── media_player.py │ └── video_widget.py └── window │ ├── __init__.py │ ├── fluent_window.py │ ├── splash_screen.py │ └── stacked_widget.py ├── requirements.txt ├── resources ├── .gitignore ├── __init__.py ├── app.qrc ├── fonts │ ├── Crimson_Pro │ │ ├── CrimsonPro-Italic-VariableFont_wght.woff2 │ │ ├── CrimsonPro-VariableFont_wght.ttf │ │ ├── CrimsonPro-VariableFont_wght.woff2 │ │ ├── OFL.txt │ │ └── README.txt │ └── Noto_Serif_SC │ │ ├── NotoSerifSC-VariableFont_wght_3500_punc.ttf │ │ ├── OFL.txt │ │ ├── README.txt │ │ ├── build_font.sh │ │ ├── info.txt │ │ ├── noto-serif-sc-v31-chinese-simplified-600.ttf │ │ ├── noto-serif-sc-v31-chinese-simplified-600.woff2 │ │ ├── noto-serif-sc-v31-chinese-simplified-700.ttf │ │ ├── noto-serif-sc-v31-chinese-simplified-700.woff2 │ │ ├── noto-serif-sc-v31-chinese-simplified-900.woff2 │ │ ├── noto-serif-sc-v31-chinese-simplified-regular.ttf │ │ └── noto-serif-sc-v31-chinese-simplified-regular.woff2 ├── images │ ├── icon.icns │ ├── icon.ico │ ├── icon.png │ └── logo.png └── mathview │ └── index.html ├── scripts ├── build-macos.sh └── build_with_nuitka.py ├── test_imgs ├── 0000000.png ├── 0000001.png ├── 0000002.png ├── 0000003.png ├── 0000004.png ├── 0000005.png ├── 0000006.png ├── 0000007.png ├── 0000008.png ├── 0000009.png ├── 0000010.png ├── 0000011.png ├── 0000012.png ├── 0000013.png └── 0000014.png ├── tools ├── __init__.py ├── clipboard_handler.py ├── fp32tofp16.py ├── local_processor.py └── screenshot.py ├── unimernet ├── __init__.py ├── common │ ├── __init__.py │ ├── config.py │ ├── dist_utils.py │ ├── gradcam.py │ ├── logger.py │ ├── optims.py │ ├── registry.py │ └── utils.py ├── configs │ ├── datasets │ │ └── formula │ │ │ ├── formula_eval.yaml │ │ │ ├── formula_train.yaml │ │ │ └── multi_scale_formula_train.yaml │ ├── default.yaml │ └── models │ │ └── unimernet_base.yaml ├── datasets │ ├── __init__.py │ ├── builders │ │ ├── __init__.py │ │ ├── base_dataset_builder.py │ │ └── formula.py │ ├── data_utils.py │ └── datasets │ │ ├── base_dataset.py │ │ ├── dataloader_utils.py │ │ ├── formula.py │ │ └── formula_multi_scale.py ├── models │ ├── __init__.py │ ├── base_model.py │ ├── blip2_models │ │ ├── Qformer.py │ │ ├── __init__.py │ │ ├── blip2.py │ │ ├── blip2_vicuna_instruct.py │ │ ├── modeling_llama.py │ │ └── modeling_llama_.py │ ├── clip_vit.py │ ├── eva_vit.py │ ├── unimernet │ │ ├── __init__.py │ │ ├── configuration_unimernet_decoder.py │ │ ├── configuration_unimernet_encoder.py │ │ ├── encoder_decoder.py │ │ ├── modeling_unimernet_decoder.py │ │ ├── modeling_unimernet_encoder.py │ │ ├── processor.py │ │ ├── unimernet.py │ │ └── utils.py │ └── vit.py ├── processors │ ├── __init__.py │ ├── base_processor.py │ ├── blip_processors.py │ ├── formula_processor.py │ ├── formula_processor_helper │ │ ├── __init__.py │ │ ├── frost │ │ │ ├── frost1.png │ │ │ ├── frost2.png │ │ │ ├── frost3.png │ │ │ ├── frost4.jpg │ │ │ ├── frost5.jpg │ │ │ └── frost6.jpg │ │ ├── nougat.py │ │ ├── ops.py │ │ └── weather.py │ └── randaugment.py ├── runners │ ├── __init__.py │ ├── runner_base.py │ └── runner_iter.py └── tasks │ ├── __init__.py │ ├── base_task.py │ └── unimernet_train.py └── uv.lock /.python-version: -------------------------------------------------------------------------------- 1 | 3.10 2 | -------------------------------------------------------------------------------- /config.json: -------------------------------------------------------------------------------- 1 | { 2 | "shortcuts": { 3 | "screenshot": "Ctrl+Alt+Q", 4 | "upload": "Ctrl+U", 5 | "paste": "Ctrl+V" 6 | } 7 | } -------------------------------------------------------------------------------- /demo.yaml: -------------------------------------------------------------------------------- 1 | model: 2 | arch: unimernet 3 | model_type: unimernet 4 | model_config: 5 | model_name: ./models/unimernet_small 6 | max_seq_len: 1536 7 | 8 | load_pretrained: True 9 | pretrained: './models/unimernet_small/unimernet_small.pth' 10 | tokenizer_config: 11 | path: ./models/unimernet_small 12 | 13 | datasets: 14 | formula_rec_eval: 15 | vis_processor: 16 | eval: 17 | name: "formula_image_eval" 18 | image_size: 19 | - 192 20 | - 672 21 | 22 | run: 23 | runner: runner_iter 24 | task: unimernet_train 25 | 26 | batch_size_train: 64 27 | batch_size_eval: 64 28 | num_workers: 1 29 | 30 | iters_per_inner_epoch: 2000 31 | max_iters: 60000 32 | 33 | seed: 42 34 | output_dir: "output/demo" 35 | 36 | evaluate: True 37 | test_splits: [ "eval" ] 38 | 39 | device: "cpu" 40 | world_size: 1 41 | dist_url: "env://" 42 | distributed: True 43 | distributed_type: ddp 44 | 45 | generate_cfg: 46 | temperature: 0.0 -------------------------------------------------------------------------------- /docs/images/group.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/docs/images/group.jpg -------------------------------------------------------------------------------- /docs/images/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/docs/images/icon.ico -------------------------------------------------------------------------------- /docs/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/docs/images/icon.png -------------------------------------------------------------------------------- /docs/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/docs/images/logo.png -------------------------------------------------------------------------------- /docs/images/qrcode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/docs/images/qrcode.jpg -------------------------------------------------------------------------------- /libs/katex/contrib/mathtex-script-type.mjs: -------------------------------------------------------------------------------- 1 | import katex from '../katex.mjs'; 2 | 3 | var scripts = document.body.getElementsByTagName("script"); 4 | scripts = Array.prototype.slice.call(scripts); 5 | scripts.forEach(function (script) { 6 | if (!script.type || !script.type.match(/math\/tex/i)) { 7 | return -1; 8 | } 9 | 10 | var display = script.type.match(/mode\s*=\s*display(;|\s|\n|$)/) != null; 11 | var katexElement = document.createElement(display ? "div" : "span"); 12 | katexElement.setAttribute("class", display ? "equation" : "inline-equation"); 13 | 14 | try { 15 | katex.render(script.text, katexElement, { 16 | displayMode: display 17 | }); 18 | } catch (err) { 19 | //console.error(err); linter doesn't like this 20 | katexElement.textContent = script.text; 21 | } 22 | 23 | script.parentNode.replaceChild(katexElement, script); 24 | }); 25 | -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_AMS-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_AMS-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_AMS-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_AMS-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_AMS-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_AMS-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Bold.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Bold.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Bold.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Caligraphic-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Caligraphic-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Bold.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Bold.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Bold.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Fraktur-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Fraktur-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Bold.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Bold.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Bold.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-BoldItalic.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-BoldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-BoldItalic.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-BoldItalic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-BoldItalic.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Italic.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Italic.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Italic.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Main-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Main-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-BoldItalic.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-BoldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-BoldItalic.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-BoldItalic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-BoldItalic.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-Italic.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-Italic.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Math-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Math-Italic.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Bold.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Bold.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Bold.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Italic.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Italic.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Italic.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_SansSerif-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_SansSerif-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Script-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Script-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Script-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Script-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Script-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Script-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size1-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size1-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size1-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size1-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size1-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size1-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size2-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size2-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size2-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size2-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size2-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size2-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size3-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size3-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size3-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size3-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size3-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size3-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size4-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size4-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size4-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size4-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Size4-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Size4-Regular.woff2 -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Typewriter-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Typewriter-Regular.ttf -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Typewriter-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Typewriter-Regular.woff -------------------------------------------------------------------------------- /libs/katex/fonts/KaTeX_Typewriter-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/libs/katex/fonts/KaTeX_Typewriter-Regular.woff2 -------------------------------------------------------------------------------- /models/README.md: -------------------------------------------------------------------------------- 1 | 下载unimernet_small模型放置在此目录下 2 | 3 | 下载方式: 4 | ```bash 5 | cd models 6 | git lfs install 7 | git clone https://huggingface.co/wanderkid/unimernet_small 8 | ``` -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [project] 2 | name = "FreeTeX" 3 | version = "0.2.0" 4 | description = "A free image to TeX app" 5 | readme = "README.md" 6 | requires-python = ">=3.10" 7 | dependencies = [ 8 | "albumentations>=2.0.6", 9 | "colorthief==0.2.1", 10 | "darkdetect==0.8.0", 11 | "evaluate>=0.4.3", 12 | "fairscale>=0.4.13", 13 | "ftfy>=6.3.1", 14 | "iopath>=0.1.10", 15 | "latex2mathml==3.78.0", 16 | "numpy>=1.24.4", 17 | "omegaconf>=2.3.0", 18 | "opencv-python>=4.11.0.86", 19 | "pandas>=2.2.3", 20 | "pillow==11.2.1", 21 | "pyqt5==5.15.11", 22 | "pyqt5-frameless-window==0.6.0", 23 | "pyqt5-sip==12.17.0", 24 | "rapidfuzz>=3.13.0", 25 | "scipy==1.15.2", 26 | "timm>=1.0.15", 27 | "torch>=2.7.0", 28 | "torchvision>=0.22.0", 29 | "transformers==4.42.4", 30 | "webdataset>=0.2.111", 31 | ] 32 | 33 | [[tool.uv.index]] 34 | url = "https://mirrors.pku.edu.cn/pypi/web/simple" 35 | default = true 36 | 37 | [dependency-groups] 38 | dev = [ 39 | "pyinstaller>=6.13.0", 40 | "pyinstaller-hooks-contrib>=2025.4", 41 | ] 42 | -------------------------------------------------------------------------------- /qfluentwidgets/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | PyQt-Fluent-Widgets 3 | =================== 4 | A fluent design widgets library based on PyQt5. 5 | 6 | Documentation is available in the docstrings and 7 | online at https://qfluentwidgets.com. 8 | 9 | Examples are available at https://github.com/zhiyiYo/PyQt-Fluent-Widgets/tree/master/examples. 10 | 11 | :copyright: (c) 2021 by zhiyiYo. 12 | :license: GPLv3 for non-commercial project, see README for more details. 13 | """ 14 | 15 | __version__ = "1.7.7" 16 | __author__ = "zhiyiYo" 17 | 18 | from .components import * 19 | from .common import * 20 | from .window import * 21 | from ._rc import resource -------------------------------------------------------------------------------- /qfluentwidgets/_rc/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/__init__.py -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.ar_AR.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.ar_AR.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.en_US.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.en_US.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.es_ES.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.es_ES.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.ru_RU.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.ru_RU.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.zh_CN.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.zh_CN.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.zh_HK.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.zh_HK.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/i18n/qfluentwidgets.zh_TW.qm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/i18n/qfluentwidgets.zh_TW.qm -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/acrylic/noise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/acrylic/noise.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/check_box/Accept_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/check_box/Accept_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/check_box/PartialAccept_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/check_box/PartialAccept_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/color_dialog/Clear_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/color_dialog/Clear_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/color_dialog/HuePanel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/color_dialog/HuePanel.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Acrylic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Acrylic.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/AnimatedIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/AnimatedIcon.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/AppBarButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/AppBarButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/AppBarSeparator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/AppBarSeparator.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/AppBarToggleButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/AppBarToggleButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/AutoSuggestBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/AutoSuggestBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/BreadcrumbBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/BreadcrumbBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Button.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/CalendarDatePicker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/CalendarDatePicker.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/CalendarView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/CalendarView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Canvas.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Canvas.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Checkbox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Checkbox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Clipboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Clipboard.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ColorPaletteResources.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ColorPaletteResources.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ColorPicker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ColorPicker.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ComboBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ComboBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/CommandBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/CommandBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/CommandBarFlyout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/CommandBarFlyout.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ConnectedAnimation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ConnectedAnimation.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ContentDialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ContentDialog.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/DataGrid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/DataGrid.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/DatePicker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/DatePicker.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/DropDownButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/DropDownButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/EasingFunction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/EasingFunction.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Expander.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Expander.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/FlipView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/FlipView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Flyout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Flyout.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Grid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Grid.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/GridView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/GridView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/HyperlinkButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/HyperlinkButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/IconElement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/IconElement.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Image.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/InfoBadge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/InfoBadge.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/InfoBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/InfoBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Line.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ListBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ListBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ListView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ListView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/MediaPlayerElement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/MediaPlayerElement.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/MenuBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/MenuBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/MenuFlyout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/MenuFlyout.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/NavigationView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/NavigationView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/NumberBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/NumberBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/PasswordBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/PasswordBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/PersonPicture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/PersonPicture.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/PipsPager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/PipsPager.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Pivot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Pivot.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ProgressBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ProgressBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ProgressRing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ProgressRing.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RadioButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RadioButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RadioButtons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RadioButtons.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RatingControl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RatingControl.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RelativePanel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RelativePanel.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RepeatButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RepeatButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RichEditBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RichEditBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/RichTextBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/RichTextBlock.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ScrollViewer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ScrollViewer.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Slider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Slider.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/SplitButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/SplitButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/StackPanel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/StackPanel.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TabView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TabView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TeachingTip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TeachingTip.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TextBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TextBlock.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TextBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TextBox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TimePicker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TimePicker.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TitleBar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TitleBar.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ToggleButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ToggleButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ToggleSplitButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ToggleSplitButton.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ToggleSwitch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ToggleSwitch.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/ToolTip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/ToolTip.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/TreeView.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/TreeView.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/VariableSizedWrapGrid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/VariableSizedWrapGrid.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/VerticalLine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/VerticalLine.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/controls/Viewbox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/controls/Viewbox.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/folder_list_dialog/Add_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/folder_list_dialog/Add_black.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/folder_list_dialog/Add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/folder_list_dialog/Add_white.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/folder_list_dialog/Close_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/folder_list_dialog/Close_black.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/folder_list_dialog/Close_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/folder_list_dialog/Close_white.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/AcceptMedium_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/AcceptMedium_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Accept_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Accept_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/BackToWindow_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/BackToWindow_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Bluetooth_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Bluetooth_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Broom_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Broom_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CancelMedium_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CancelMedium_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareDownSolid_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareDownSolid_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareLeftSolid_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareLeftSolid_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareRightSolid_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareRightSolid_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareUpSolid_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CareUpSolid_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CheckBox_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/CheckBox_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronDownMed_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronDownMed_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronDown_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronDown_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronRightMed_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronRightMed_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronRight_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/ChevronRight_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Close_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Close_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Document_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Document_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Down_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Down_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Edit_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Edit_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Education_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Education_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/EraseTool_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/EraseTool_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Filter_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Filter_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Flag_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Flag_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FontIncrease_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FontIncrease_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FontSize_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FontSize_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FullScreen_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/FullScreen_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/GitHub_black.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/GitHub_white.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Heart_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Heart_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/HomeFill_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/HomeFill_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/LeftArrow_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/LeftArrow_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/LibraryFill_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/LibraryFill_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Mail_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Mail_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Market_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Market_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Megaphone_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Megaphone_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Menu_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Menu_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/PauseBold_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/PauseBold_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Pin_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/PlaySolid_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/PlaySolid_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Play_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Play_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Remove_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Remove_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Return_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Return_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/RightArrow_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/RightArrow_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Scroll_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Scroll_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/SendFill_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/SendFill_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Send_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Send_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Unit_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Unit_white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Up_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/icons/Up_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/qfluentwidgets/_rc/images/logo.png -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/spin_box/Down_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/spin_box/Down_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/spin_box/Up_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/spin_box/Up_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/table_view/Down_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/table_view/Down_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/table_view/Up_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/table_view/Up_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/tree_view/TreeViewClose_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/tree_view/TreeViewClose_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/tree_view/TreeViewOpen_black.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/images/tree_view/TreeViewOpen_white.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/card_widget.qss: -------------------------------------------------------------------------------- 1 | HeaderCardWidget #headerLabel { 2 | color: white; 3 | } 4 | 5 | HeaderCardWidget > #headerView, 6 | HeaderCardWidget > #view { 7 | background-color: transparent; 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/check_box.qss: -------------------------------------------------------------------------------- 1 | CheckBox { 2 | color: white; 3 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 4 | spacing: 8px; 5 | min-width: 28px; 6 | min-height: 22px; 7 | outline: none; 8 | margin-left: 1px; 9 | } 10 | 11 | CheckBox::indicator { 12 | width: 18px; 13 | height: 18px; 14 | border-radius: 5px; 15 | border: 1px solid transparent; 16 | background-color: transparent; 17 | } 18 | 19 | CheckBox:disabled { 20 | color: rgba(255, 255, 255, 0.36); 21 | } 22 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/combo_box.qss: -------------------------------------------------------------------------------- 1 | ComboBox { 2 | border: 1px solid rgba(255, 255, 255, 0.053); 3 | border-radius: 5px; 4 | border-top: 1px solid rgba(255, 255, 255, 0.08); 5 | padding: 5px 31px 6px 11px; 6 | /* font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; */ 7 | color: white; 8 | background-color: rgba(255, 255, 255, 0.0605); 9 | text-align: left; 10 | outline: none; 11 | } 12 | 13 | ComboBox:hover { 14 | background-color: rgba(255, 255, 255, 0.0837); 15 | } 16 | 17 | ComboBox:pressed { 18 | background-color: rgba(255, 255, 255, 0.0326); 19 | border-top: 1px solid rgba(255, 255, 255, 0.053); 20 | color: rgba(255, 255, 255, 0.63); 21 | } 22 | 23 | ComboBox:disabled { 24 | color: rgba(255, 255, 255, 0.3628); 25 | background: rgba(255, 255, 255, 0.0419); 26 | border: 1px solid rgba(255, 255, 255, 0.053); 27 | border-top: 1px solid rgba(255, 255, 255, 0.053); 28 | } 29 | 30 | ComboBox[isPlaceholderText=true] { 31 | color: rgba(255, 255, 255, 0.6063); 32 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/flip_view.qss: -------------------------------------------------------------------------------- 1 | FlipView { 2 | background-color: transparent; 3 | border: none; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/info_badge.qss: -------------------------------------------------------------------------------- 1 | InfoBadge { 2 | padding: 1px 3px 1px 3px; 3 | color: black; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/info_bar.qss: -------------------------------------------------------------------------------- 1 | InfoBar { 2 | border: 1px solid rgb(29, 29, 29); 3 | border-radius: 6px; 4 | background-color: rgb(39, 39, 39); 5 | } 6 | 7 | #titleLabel { 8 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 9 | font-weight: bold; 10 | color: white; 11 | background-color: transparent; 12 | } 13 | 14 | #contentLabel { 15 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 16 | color: white; 17 | background-color: transparent; 18 | } 19 | 20 | InfoBar[type="Info"] { 21 | background-color: rgb(39, 39, 39); 22 | } 23 | 24 | InfoBar[type="Success"] { 25 | background-color: rgb(57, 61, 27); 26 | } 27 | 28 | InfoBar[type="Warning"] { 29 | background-color: rgb(67, 53, 25); 30 | } 31 | 32 | InfoBar[type="Error"] { 33 | background-color: rgb(68, 39, 38); 34 | } 35 | 36 | InfoBarCloseButton { 37 | background-color: transparent; 38 | border-radius: 5px; 39 | } 40 | 41 | InfoBarCloseButton:hover { 42 | background-color: rgba(255, 255, 255, 9); 43 | } 44 | 45 | InfoBarCloseButton:pressed { 46 | background-color: rgba(255, 255, 255, 6); 47 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/label.qss: -------------------------------------------------------------------------------- 1 | FluentLabelBase { 2 | color: white; 3 | } 4 | 5 | HyperlinkLabel { 6 | color: --ThemeColorPrimary; 7 | border: none; 8 | background-color: transparent; 9 | text-align: left; 10 | padding: 0; 11 | margin: 0; 12 | } 13 | 14 | HyperlinkLabel[underline=true] { 15 | text-decoration: underline; 16 | } 17 | 18 | HyperlinkLabel[underline=false] { 19 | text-decoration: none; 20 | } 21 | 22 | HyperlinkLabel:hover { 23 | color: --ThemeColorDark1; 24 | } 25 | 26 | HyperlinkLabel:pressed { 27 | color: --ThemeColorLight1; 28 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/list_view.qss: -------------------------------------------------------------------------------- 1 | ListView, 2 | ListWidget { 3 | background: transparent; 4 | outline: none; 5 | border: none; 6 | /* font: 13px 'Segoe UI', 'Microsoft YaHei'; */ 7 | selection-background-color: transparent; 8 | alternate-background-color: transparent; 9 | padding-left: 4px; 10 | padding-right: 4px; 11 | } 12 | 13 | ListView::item, 14 | ListWidget::item { 15 | background: transparent; 16 | border: 0px; 17 | padding-left: 11px; 18 | padding-right: 11px; 19 | height: 35px; 20 | } 21 | 22 | ListView::indicator, 23 | ListWidget::indicator { 24 | width: 18px; 25 | height: 18px; 26 | border-radius: 5px; 27 | border: none; 28 | background-color: transparent; 29 | margin-right: 4px; 30 | } 31 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/media_player.qss: -------------------------------------------------------------------------------- 1 | CaptionLabel { 2 | color: white; 3 | } 4 | 5 | QGraphicsView { 6 | background: transparent; 7 | border: none 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/message_dialog.qss: -------------------------------------------------------------------------------- 1 | QWidget { 2 | background-color: rgb(23, 23, 23); 3 | border: 1px solid rgb(55, 55, 55); 4 | } 5 | 6 | QWidget#windowMask { 7 | background-color: rgba(0, 0, 0, 0.6); 8 | border: none; 9 | } 10 | 11 | QLabel { 12 | background-color: transparent; 13 | color: white; 14 | font-family: 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 15 | border: none; 16 | } 17 | 18 | QLabel#titleLabel { 19 | font-size: 18px; 20 | } 21 | 22 | QLabel#contentLabel { 23 | font-size: 14px; 24 | } 25 | 26 | QPushButton { 27 | background-color: rgb(51, 51, 51); 28 | font: 15px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 29 | border: transparent; 30 | color: white; 31 | } 32 | 33 | QPushButton:pressed:hover { 34 | background-color: rgb(102, 102, 102); 35 | } 36 | 37 | QPushButton:hover { 38 | background-color: rgb(35, 35, 35); 39 | } 40 | 41 | QPushButton:disabled { 42 | background-color: rgb(51, 51, 51); 43 | color: rgb(133, 133, 133); 44 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/navigation_interface.qss: -------------------------------------------------------------------------------- 1 | NavigationPanel[menu=true] { 2 | background-color: rgb(32, 32, 32); 3 | border: 1px solid rgb(57, 57, 57); 4 | border-top-right-radius: 7px; 5 | border-bottom-right-radius: 7px; 6 | } 7 | 8 | NavigationPanel[menu=false] { 9 | background-color: transparent; 10 | border: 1px solid transparent; 11 | border-top-right-radius: 7px; 12 | border-bottom-right-radius: 7px; 13 | } 14 | 15 | NavigationPanel[transparent=true] { 16 | background-color: transparent; 17 | } 18 | 19 | QScrollArea, 20 | #scrollWidget { 21 | border: none; 22 | background-color: transparent; 23 | } 24 | 25 | /* NavigationInterface { 26 | background-color: rgb(32, 32, 32); 27 | } */ -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/pips_pager.qss: -------------------------------------------------------------------------------- 1 | PipsPager { 2 | border: none; 3 | background-color: transparent; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/setting_card_group.qss: -------------------------------------------------------------------------------- 1 | SettingCardGroup { 2 | background-color: transparent; 3 | } 4 | 5 | SettingCardGroup>QLabel { 6 | background-color: transparent; 7 | color: white; 8 | border: none; 9 | } 10 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/state_tool_tip.qss: -------------------------------------------------------------------------------- 1 | StateToolTip, 2 | ToastToolTip { 3 | background-color: --ThemeColorDark1; 4 | border: none; 5 | border-radius: 7px; 6 | } 7 | 8 | QLabel { 9 | color: black; 10 | background-color: transparent; 11 | font-family: 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 12 | border: none; 13 | } 14 | 15 | QLabel#titleLabel { 16 | font-size: 14px; 17 | } 18 | 19 | QLabel#contentLabel { 20 | font-size: 13px ; 21 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/switch_button.qss: -------------------------------------------------------------------------------- 1 | QWidget { 2 | background-color: transparent; 3 | } 4 | 5 | SwitchButton { 6 | qproperty-spacing: 12; 7 | background-color: transparent; 8 | } 9 | 10 | SwitchButton>QLabel { 11 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 12 | color: white; 13 | background-color: transparent; 14 | border: none; 15 | } 16 | 17 | SwitchButton>QLabel:disabled { 18 | color: rgba(255, 255, 255, 0.36); 19 | } 20 | 21 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/tab_view.qss: -------------------------------------------------------------------------------- 1 | TabBar { 2 | border: none; 3 | background-color: transparent; 4 | } 5 | 6 | #view { 7 | background-color: transparent; 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/teaching_tip.qss: -------------------------------------------------------------------------------- 1 | #titleLabel { 2 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 3 | font-weight: bold; 4 | color: white; 5 | background-color: transparent; 6 | } 7 | 8 | #contentLabel { 9 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 10 | color: white; 11 | background-color: transparent; 12 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/dark/tool_tip.qss: -------------------------------------------------------------------------------- 1 | ToolTip { 2 | border-radius: 4px; 3 | } 4 | 5 | ToolTip > #container { 6 | background-color: rgb(43, 43, 43); 7 | border: 1px solid rgb(28, 28, 28); 8 | border-radius: 4px; 9 | } 10 | 11 | ToolTip>#container[transparent=true] { 12 | background-color: transparent; 13 | border: 1px solid rgba(0, 0, 0, 50); 14 | } 15 | 16 | QLabel { 17 | background-color: transparent; 18 | font: 12px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 19 | color: white; 20 | border: none; 21 | } 22 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/card_widget.qss: -------------------------------------------------------------------------------- 1 | HeaderCardWidget #headerLabel { 2 | color: black; 3 | } 4 | 5 | HeaderCardWidget > #headerView, 6 | HeaderCardWidget > #view { 7 | background-color: transparent; 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/check_box.qss: -------------------------------------------------------------------------------- 1 | CheckBox { 2 | color: black; 3 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 4 | spacing: 8px; 5 | min-width: 28px; 6 | min-height: 22px; 7 | outline: none; 8 | margin-left: 1px; 9 | } 10 | 11 | CheckBox::indicator { 12 | width: 18px; 13 | height: 18px; 14 | border-radius: 5px; 15 | border: 1px solid transparent; 16 | background-color: transparent; 17 | } 18 | 19 | CheckBox:disabled { 20 | color: rgba(0, 0, 0, 0.36); 21 | } 22 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/combo_box.qss: -------------------------------------------------------------------------------- 1 | ComboBox { 2 | border: 1px solid rgba(0, 0, 0, 0.073); 3 | border-radius: 5px; 4 | border-bottom: 1px solid rgba(0, 0, 0, 0.183); 5 | padding: 5px 31px 6px 11px; 6 | /* font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; */ 7 | color: black; 8 | background-color: rgba(255, 255, 255, 0.7); 9 | text-align: left; 10 | outline: none; 11 | } 12 | 13 | ComboBox:hover { 14 | background-color: rgba(249, 249, 249, 0.5); 15 | } 16 | 17 | ComboBox:pressed { 18 | background-color: rgba(249, 249, 249, 0.3); 19 | border-bottom: 1px solid rgba(0, 0, 0, 0.073); 20 | color: rgba(0, 0, 0, 0.63); 21 | } 22 | 23 | ComboBox:disabled { 24 | color: rgba(0, 0, 0, 0.36); 25 | background: rgba(249, 249, 249, 0.3); 26 | border: 1px solid rgba(0, 0, 0, 0.06); 27 | border-bottom: 1px solid rgba(0, 0, 0, 0.06); 28 | } 29 | 30 | ComboBox[isPlaceholderText=true] { 31 | color: rgba(0, 0, 0, 0.6063); 32 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/flip_view.qss: -------------------------------------------------------------------------------- 1 | FlipView { 2 | background-color: transparent; 3 | border: none; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/folder_list_dialog.qss: -------------------------------------------------------------------------------- 1 | QWidget { 2 | background-color: white; 3 | border: 1px solid rgb(200, 200, 200); 4 | } 5 | 6 | QWidget#windowMask { 7 | background-color: rgba(255, 255, 255, 0.6); 8 | border: none; 9 | } 10 | 11 | QLabel { 12 | color: black; 13 | border: none; 14 | background-color: transparent; 15 | } 16 | 17 | QLabel#titleLabel { 18 | font: 20px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 19 | } 20 | 21 | QLabel#contentLabel { 22 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 23 | } 24 | 25 | QPushButton#completeButton { 26 | color: black; 27 | background-color: rgb(204, 204, 204); 28 | padding: 9px 51px 9px 51px; 29 | font: 15px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 30 | border: none; 31 | } 32 | 33 | QPushButton#completeButton:pressed:hover { 34 | background-color: rgb(153, 153, 153); 35 | } 36 | 37 | QPushButton#completeButton:hover { 38 | background-color: rgb(230, 230, 230); 39 | } 40 | 41 | QPushButton#completeButton:disabled { 42 | background-color: rgb(204, 204, 204); 43 | color: rgb(122, 122, 122); 44 | } 45 | 46 | QScrollArea{ 47 | border: none; 48 | } 49 | 50 | 51 | #scrollWidget{ 52 | border: none; 53 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/info_badge.qss: -------------------------------------------------------------------------------- 1 | InfoBadge { 2 | padding: 1px 3px 1px 3px; 3 | color: white; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/info_bar.qss: -------------------------------------------------------------------------------- 1 | InfoBar { 2 | border: 1px solid rgb(229, 229, 229); 3 | border-radius: 6px; 4 | background-color: rgb(244, 244, 244); 5 | } 6 | 7 | #titleLabel { 8 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 9 | font-weight: bold; 10 | color: black; 11 | background-color: transparent; 12 | } 13 | 14 | #contentLabel { 15 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 16 | color: black; 17 | background-color: transparent; 18 | } 19 | 20 | InfoBar[type="Info"] { 21 | background-color: rgb(244, 244, 244); 22 | } 23 | 24 | InfoBar[type="Success"] { 25 | background-color: rgb(223, 246, 221); 26 | } 27 | 28 | InfoBar[type="Warning"] { 29 | background-color: rgb(255, 244, 206); 30 | } 31 | 32 | InfoBar[type="Error"] { 33 | background-color: rgb(253, 231, 233); 34 | } 35 | 36 | InfoBarCloseButton { 37 | background-color: transparent; 38 | border-radius: 5px; 39 | } 40 | 41 | InfoBarCloseButton:hover { 42 | background-color: rgba(0, 0, 0, 9); 43 | } 44 | 45 | InfoBarCloseButton:pressed { 46 | background-color: rgba(0, 0, 0, 6); 47 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/label.qss: -------------------------------------------------------------------------------- 1 | FluentLabelBase { 2 | color: black; 3 | } 4 | 5 | HyperlinkLabel { 6 | color: --ThemeColorPrimary; 7 | border: none; 8 | background-color: transparent; 9 | text-align: left; 10 | padding: 0; 11 | margin: 0; 12 | } 13 | 14 | HyperlinkLabel[underline=true] { 15 | text-decoration: underline; 16 | } 17 | 18 | HyperlinkLabel[underline=false] { 19 | text-decoration: none; 20 | } 21 | 22 | HyperlinkLabel:hover { 23 | color: --ThemeColorDark1; 24 | } 25 | 26 | HyperlinkLabel:pressed { 27 | color: --ThemeColorLight1; 28 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/list_view.qss: -------------------------------------------------------------------------------- 1 | ListView, 2 | ListWidget { 3 | background: transparent; 4 | outline: none; 5 | border: none; 6 | /* font: 13px 'Segoe UI', 'Microsoft YaHei'; */ 7 | selection-background-color: transparent; 8 | alternate-background-color: transparent; 9 | padding-left: 4px; 10 | padding-right: 4px; 11 | } 12 | 13 | ListView::item, 14 | ListWidget::item { 15 | background: transparent; 16 | border: 0px; 17 | padding-left: 11px; 18 | padding-right: 11px; 19 | height: 35px; 20 | } 21 | 22 | 23 | ListView::indicator, 24 | ListWidget::indicator { 25 | width: 18px; 26 | height: 18px; 27 | border-radius: 5px; 28 | border: none; 29 | background-color: transparent; 30 | margin-right: 4px; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/media_player.qss: -------------------------------------------------------------------------------- 1 | CaptionLabel { 2 | color: black; 3 | } 4 | 5 | QGraphicsView { 6 | background: transparent; 7 | border: none 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/message_dialog.qss: -------------------------------------------------------------------------------- 1 | QWidget { 2 | background-color: white; 3 | border: 1px solid rgb(200, 200, 200); 4 | } 5 | 6 | QWidget#windowMask { 7 | background-color: rgba(255, 255, 255, 0.6); 8 | border: none; 9 | } 10 | 11 | QLabel { 12 | background-color: transparent; 13 | color: black; 14 | font-family: 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 15 | border: none; 16 | } 17 | 18 | QLabel#titleLabel { 19 | font-size: 18px; 20 | } 21 | 22 | QLabel#contentLabel { 23 | font-size: 14px; 24 | } 25 | 26 | QPushButton { 27 | background-color: rgb(204, 204, 204); 28 | font: 15px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 29 | border: transparent; 30 | } 31 | 32 | QPushButton:pressed:hover { 33 | background-color: rgb(153, 153, 153); 34 | } 35 | 36 | QPushButton:hover { 37 | background-color: rgb(230, 230, 230); 38 | } 39 | 40 | QPushButton:disabled { 41 | background-color: rgb(204, 204, 204); 42 | color: rgb(122, 122, 122); 43 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/navigation_interface.qss: -------------------------------------------------------------------------------- 1 | NavigationPanel[menu=true] { 2 | background-color: rgb(243, 243, 243); 3 | border: 1px solid rgb(229, 229, 229); 4 | border-top-right-radius: 7px; 5 | border-bottom-right-radius: 7px; 6 | } 7 | 8 | NavigationPanel[menu=false] { 9 | background-color: transparent; 10 | border: 1px solid transparent; 11 | border-top-right-radius: 7px; 12 | border-bottom-right-radius: 7px; 13 | } 14 | 15 | NavigationPanel[transparent=true] { 16 | background-color: transparent; 17 | } 18 | 19 | QScrollArea, #scrollWidget { 20 | border: none; 21 | background-color: transparent; 22 | } 23 | 24 | /* NavigationInterface { 25 | background-color: rgb(243, 243, 243); 26 | } */ -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/pips_pager.qss: -------------------------------------------------------------------------------- 1 | PipsPager { 2 | border: none; 3 | background-color: transparent; 4 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/setting_card_group.qss: -------------------------------------------------------------------------------- 1 | SettingCardGroup { 2 | background-color: transparent; 3 | } 4 | 5 | SettingCardGroup>QLabel { 6 | background-color: transparent; 7 | color: black; 8 | border: none; 9 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/state_tool_tip.qss: -------------------------------------------------------------------------------- 1 | StateToolTip, 2 | ToastToolTip { 3 | background-color: --ThemeColorDark1; 4 | border: none; 5 | border-radius: 7px; 6 | } 7 | 8 | QLabel { 9 | color: white; 10 | background-color: transparent; 11 | font-family: 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 12 | border: none; 13 | } 14 | 15 | QLabel#titleLabel { 16 | font-size: 14px; 17 | } 18 | 19 | QLabel#contentLabel { 20 | font-size: 13px; 21 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/switch_button.qss: -------------------------------------------------------------------------------- 1 | QWidget { 2 | background-color: white; 3 | } 4 | 5 | SwitchButton { 6 | qproperty-spacing: 12; 7 | background-color: transparent; 8 | } 9 | 10 | SwitchButton>QLabel { 11 | color: black; 12 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 13 | background-color: transparent; 14 | border: none; 15 | } 16 | 17 | SwitchButton>QLabel:disabled { 18 | color: rgba(0, 0, 0, 0.36); 19 | } 20 | 21 | -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/tab_view.qss: -------------------------------------------------------------------------------- 1 | TabBar { 2 | border: none; 3 | background-color: transparent; 4 | } 5 | 6 | #view { 7 | background-color: transparent; 8 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/teaching_tip.qss: -------------------------------------------------------------------------------- 1 | #titleLabel { 2 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 3 | font-weight: bold; 4 | color: black; 5 | background-color: transparent; 6 | } 7 | 8 | #contentLabel { 9 | font: 14px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 10 | color: black; 11 | background-color: transparent; 12 | } -------------------------------------------------------------------------------- /qfluentwidgets/_rc/qss/light/tool_tip.qss: -------------------------------------------------------------------------------- 1 | ToolTip { 2 | border-radius: 4px; 3 | } 4 | 5 | ToolTip>#container { 6 | border: 1px solid rgba(0, 0, 0, 0.06); 7 | background-color: rgb(249, 249, 249); 8 | border-radius: 4px; 9 | } 10 | 11 | ToolTip>#container[transparent=true] { 12 | background-color: transparent; 13 | } 14 | 15 | 16 | QLabel { 17 | background-color: transparent; 18 | font: 12px 'Segoe UI', 'Microsoft YaHei', 'PingFang SC'; 19 | border: none; 20 | color: black; 21 | } -------------------------------------------------------------------------------- /qfluentwidgets/common/__init__.py: -------------------------------------------------------------------------------- 1 | from .config import * 2 | from .font import setFont, getFont 3 | from .auto_wrap import TextWrap 4 | from .icon import Action, Icon, getIconColor, drawSvgIcon, FluentIcon, drawIcon, FluentIconBase, writeSvg 5 | from .style_sheet import (setStyleSheet, getStyleSheet, setTheme, ThemeColor, themeColor, 6 | setThemeColor, applyThemeColor, FluentStyleSheet, StyleSheetBase, 7 | StyleSheetFile, StyleSheetCompose, CustomStyleSheet, toggleTheme, setCustomStyleSheet) 8 | from .smooth_scroll import SmoothScroll, SmoothMode 9 | from .translator import FluentTranslator 10 | from .router import qrouter, Router 11 | from .color import FluentThemeColor 12 | from .theme_listener import SystemThemeListener -------------------------------------------------------------------------------- /qfluentwidgets/common/exception_handler.py: -------------------------------------------------------------------------------- 1 | # coding:utf-8 2 | from copy import deepcopy 3 | 4 | 5 | 6 | def exceptionHandler(*default): 7 | """ decorator for exception handling 8 | 9 | Parameters 10 | ---------- 11 | *default: 12 | the default value returned when an exception occurs 13 | """ 14 | 15 | def outer(func): 16 | 17 | def inner(*args, **kwargs): 18 | try: 19 | return func(*args, **kwargs) 20 | except BaseException as e: 21 | value = deepcopy(default) 22 | if len(value) == 0: 23 | return None 24 | elif len(value) == 1: 25 | return value[0] 26 | 27 | return value 28 | 29 | return inner 30 | 31 | return outer 32 | -------------------------------------------------------------------------------- /qfluentwidgets/common/font.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | from PyQt5.QtGui import QFont 3 | from PyQt5.QtWidgets import QWidget 4 | 5 | 6 | def setFont(widget: QWidget, fontSize=14, weight=QFont.Normal): 7 | """ set the font of widget 8 | 9 | Parameters 10 | ---------- 11 | widget: QWidget 12 | the widget to set font 13 | 14 | fontSize: int 15 | font pixel size 16 | 17 | weight: `QFont.Weight` 18 | font weight 19 | """ 20 | widget.setFont(getFont(fontSize, weight)) 21 | 22 | 23 | def getFont(fontSize=14, weight=QFont.Normal): 24 | """ create font 25 | 26 | Parameters 27 | ---------- 28 | fontSize: int 29 | font pixel size 30 | 31 | weight: `QFont.Weight` 32 | font weight 33 | """ 34 | font = QFont() 35 | font.setFamilies(['Segoe UI', 'Microsoft YaHei', 'PingFang SC']) 36 | font.setPixelSize(fontSize) 37 | font.setWeight(weight) 38 | return font -------------------------------------------------------------------------------- /qfluentwidgets/common/screen.py: -------------------------------------------------------------------------------- 1 | from PyQt5.QtCore import QPoint, QRect 2 | from PyQt5.QtGui import QCursor 3 | from PyQt5.QtWidgets import QApplication 4 | 5 | 6 | def getCurrentScreen(): 7 | """ get current screen """ 8 | cursorPos = QCursor.pos() 9 | 10 | for s in QApplication.screens(): 11 | if s.geometry().contains(cursorPos): 12 | return s 13 | 14 | return None 15 | 16 | 17 | def getCurrentScreenGeometry(avaliable=True): 18 | """ get current screen geometry """ 19 | screen = getCurrentScreen() or QApplication.primaryScreen() 20 | 21 | # this should not happen 22 | if not screen: 23 | return QRect(0, 0, 1920, 1080) 24 | 25 | return screen.availableGeometry() if avaliable else screen.geometry() -------------------------------------------------------------------------------- /qfluentwidgets/common/theme_listener.py: -------------------------------------------------------------------------------- 1 | # coding:utf-8 2 | from PyQt5.QtCore import QThread, pyqtSignal 3 | 4 | from .config import Theme, qconfig 5 | import darkdetect 6 | 7 | 8 | class SystemThemeListener(QThread): 9 | """ System theme listener """ 10 | 11 | systemThemeChanged = pyqtSignal() 12 | 13 | def __init__(self, parent=None): 14 | super().__init__(parent=parent) 15 | 16 | def run(self): 17 | darkdetect.listener(self._onThemeChanged) 18 | 19 | def _onThemeChanged(self, theme: str): 20 | theme = Theme.DARK if theme.lower() == "dark" else Theme.LIGHT 21 | 22 | if qconfig.themeMode.value != Theme.AUTO or theme == qconfig.theme: 23 | return 24 | 25 | qconfig.theme = Theme.AUTO 26 | qconfig._cfg.themeChanged.emit(Theme.AUTO) 27 | self.systemThemeChanged.emit() -------------------------------------------------------------------------------- /qfluentwidgets/common/translator.py: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | from PyQt5.QtCore import QTranslator, QLocale 3 | 4 | 5 | class FluentTranslator(QTranslator): 6 | """ Translator of fluent widgets """ 7 | 8 | def __init__(self, locale: QLocale = None, parent=None): 9 | super().__init__(parent=parent) 10 | self.load(locale or QLocale()) 11 | 12 | def load(self, locale: QLocale): 13 | """ load translation file """ 14 | super().load(f":/qfluentwidgets/i18n/qfluentwidgets.{locale.name()}.qm") -------------------------------------------------------------------------------- /qfluentwidgets/components/__init__.py: -------------------------------------------------------------------------------- 1 | from .dialog_box import * 2 | from .layout import * 3 | from .settings import * 4 | from .widgets import * 5 | from .navigation import * 6 | from .date_time import * -------------------------------------------------------------------------------- /qfluentwidgets/components/date_time/__init__.py: -------------------------------------------------------------------------------- 1 | from .calendar_picker import CalendarPicker, FastCalendarPicker 2 | from .date_picker import DatePickerBase, DatePicker, ZhDatePicker 3 | from .picker_base import PickerBase, PickerPanel, PickerColumnFormatter 4 | from .time_picker import TimePicker, AMTimePicker -------------------------------------------------------------------------------- /qfluentwidgets/components/dialog_box/__init__.py: -------------------------------------------------------------------------------- 1 | from .color_dialog import ColorDialog 2 | from .dialog import Dialog, MessageBox 3 | from .folder_list_dialog import FolderListDialog 4 | from .message_dialog import MessageDialog 5 | from .message_box_base import MessageBoxBase 6 | from .mask_dialog_base import MaskDialogBase -------------------------------------------------------------------------------- /qfluentwidgets/components/layout/__init__.py: -------------------------------------------------------------------------------- 1 | from .expand_layout import ExpandLayout 2 | from .flow_layout import FlowLayout 3 | from .v_box_layout import VBoxLayout -------------------------------------------------------------------------------- /qfluentwidgets/components/material/__init__.py: -------------------------------------------------------------------------------- 1 | from .acrylic_menu import AcrylicMenu, AcrylicLineEditMenu, AcrylicCheckableMenu, AcrylicCheckableSystemTrayMenu, AcrylicSystemTrayMenu 2 | from .acrylic_line_edit import AcrylicLineEditBase, AcrylicLineEdit, AcrylicSearchLineEdit 3 | from .acrylic_combo_box import AcrylicComboBox, AcrylicComboBoxSettingCard, AcrylicEditableComboBox 4 | from .acrylic_widget import AcrylicWidget, AcrylicBrush 5 | from .acrylic_flyout import AcrylicFlyoutView, AcrylicFlyoutViewBase, AcrylicFlyout 6 | from .acrylic_tool_tip import AcrylicToolTip, AcrylicToolTipFilter -------------------------------------------------------------------------------- /qfluentwidgets/components/material/acrylic_line_edit.py: -------------------------------------------------------------------------------- 1 | # coding:utf-8 2 | from .acrylic_menu import AcrylicCompleterMenu, AcrylicLineEditMenu 3 | from ..widgets.line_edit import LineEdit, SearchLineEdit 4 | 5 | 6 | class AcrylicLineEditBase: 7 | """ Acrylic line edit base """ 8 | 9 | def __init__(self, *args, **kwargs) -> None: 10 | super().__init__(*args, **kwargs) 11 | 12 | def setCompleter(self, completer): 13 | super().setCompleter(completer) 14 | self.setCompleterMenu(AcrylicCompleterMenu(self)) 15 | 16 | def contextMenuEvent(self, e): 17 | menu = AcrylicLineEditMenu(self) 18 | menu.exec(e.globalPos()) 19 | 20 | 21 | 22 | class AcrylicLineEdit(AcrylicLineEditBase, LineEdit): 23 | """ Acrylic line edit """ 24 | 25 | 26 | class AcrylicSearchLineEdit(AcrylicLineEditBase, SearchLineEdit): 27 | """ Acrylic search line edit """ 28 | -------------------------------------------------------------------------------- /qfluentwidgets/components/navigation/__init__.py: -------------------------------------------------------------------------------- 1 | from .navigation_widget import (NavigationWidget, NavigationPushButton, NavigationSeparator, NavigationToolButton, 2 | NavigationTreeWidget, NavigationTreeWidgetBase, NavigationAvatarWidget) 3 | from .navigation_panel import NavigationPanel, NavigationItemPosition, NavigationDisplayMode 4 | from .navigation_interface import NavigationInterface 5 | from .navigation_bar import NavigationBarPushButton, NavigationBar 6 | from .pivot import Pivot, PivotItem 7 | from .segmented_widget import (SegmentedItem, SegmentedWidget, SegmentedToolItem, SegmentedToolWidget, 8 | SegmentedToggleToolItem, SegmentedToggleToolWidget) 9 | from .breadcrumb import BreadcrumbBar, BreadcrumbItem -------------------------------------------------------------------------------- /qfluentwidgets/components/settings/__init__.py: -------------------------------------------------------------------------------- 1 | from .setting_card import (SettingCard, SwitchSettingCard, RangeSettingCard, 2 | PushSettingCard, ColorSettingCard, HyperlinkCard, 3 | PrimaryPushSettingCard, ColorPickerButton, ComboBoxSettingCard) 4 | from .expand_setting_card import ExpandSettingCard, ExpandGroupSettingCard, SimpleExpandGroupSettingCard 5 | from .folder_list_setting_card import FolderListSettingCard 6 | from .options_setting_card import OptionsSettingCard 7 | from .custom_color_setting_card import CustomColorSettingCard 8 | from .setting_card_group import SettingCardGroup -------------------------------------------------------------------------------- /qfluentwidgets/multimedia/__init__.py: -------------------------------------------------------------------------------- 1 | from .media_player import MediaPlayer, MediaPlayerBase 2 | from .media_play_bar import MediaPlayBarButton, SimpleMediaPlayBar, StandardMediaPlayBar 3 | from .video_widget import VideoWidget -------------------------------------------------------------------------------- /qfluentwidgets/window/__init__.py: -------------------------------------------------------------------------------- 1 | from .fluent_window import FluentWindow, MSFluentWindow, SplitFluentWindow, FluentTitleBar, MSFluentTitleBar, SplitTitleBar, FluentBackgroundTheme 2 | from .splash_screen import SplashScreen -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | colorthief==0.2.1 2 | darkdetect==0.8.0 3 | latex2mathml==3.78.0 4 | unimernet==0.2.3 5 | numpy==1.24.4 6 | Pillow==11.2.1 7 | PyQt5==5.15.11 8 | pyqt5_frameless_window==0.6.0 9 | PyQt5_sip==12.17.0 10 | scipy==1.15.2 11 | PyQtWebEngine==5.15.7 12 | PyQtWebEngine-Qt5==5.15.2 13 | -------------------------------------------------------------------------------- /resources/.gitignore: -------------------------------------------------------------------------------- 1 | *.rcc 2 | *_rc.py -------------------------------------------------------------------------------- /resources/__init__.py: -------------------------------------------------------------------------------- 1 | from . import app_rc 2 | 3 | __all__ = ["app_rc"] 4 | -------------------------------------------------------------------------------- /resources/app.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | fonts/Noto_Serif_SC/NotoSerifSC-VariableFont_wght_3500_punc.ttf 5 | fonts/Crimson_Pro/CrimsonPro-VariableFont_wght.ttf 6 | mathview/index.html 7 | 8 | -------------------------------------------------------------------------------- /resources/fonts/Crimson_Pro/CrimsonPro-Italic-VariableFont_wght.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Crimson_Pro/CrimsonPro-Italic-VariableFont_wght.woff2 -------------------------------------------------------------------------------- /resources/fonts/Crimson_Pro/CrimsonPro-VariableFont_wght.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Crimson_Pro/CrimsonPro-VariableFont_wght.ttf -------------------------------------------------------------------------------- /resources/fonts/Crimson_Pro/CrimsonPro-VariableFont_wght.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Crimson_Pro/CrimsonPro-VariableFont_wght.woff2 -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/NotoSerifSC-VariableFont_wght_3500_punc.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/NotoSerifSC-VariableFont_wght_3500_punc.ttf -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/build_font.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pyftsubset NotoSerifSC-VariableFont_wght.ttf \ 4 | --text-file=../../../dev/chinese-3500.txt \ 5 | --text-file=../../../dev/chinese-punctuations.txt \ 6 | --output-file=NotoSerifSC-VariableFont_wght_3500_punc.ttf 7 | woff2_compress NotoSerifSC-VariableFont_wght_3500_punc.ttf 8 | rm NotoSerifSC-VariableFont_wght_3500_punc.ttf 9 | -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-600.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-600.ttf -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-600.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-600.woff2 -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-700.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-700.ttf -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-700.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-700.woff2 -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-900.woff2 -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-regular.ttf -------------------------------------------------------------------------------- /resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/fonts/Noto_Serif_SC/noto-serif-sc-v31-chinese-simplified-regular.woff2 -------------------------------------------------------------------------------- /resources/images/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/images/icon.icns -------------------------------------------------------------------------------- /resources/images/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/images/icon.ico -------------------------------------------------------------------------------- /resources/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/images/icon.png -------------------------------------------------------------------------------- /resources/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/resources/images/logo.png -------------------------------------------------------------------------------- /scripts/build-macos.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Clean up any previous builds. 4 | rm -rf build dist 5 | 6 | # Compile the resources. 7 | [ ! -f "resources/app_rc.py" ] && uv run pyrcc5 resources/app.qrc -o resources/app_rc.py -compress 3 8 | 9 | # Create the app bundle. 10 | uv run pyinstaller main.spec 11 | 12 | # Create a folder (named dmg) to prepare our DMG in (if it doesn't already exist). 13 | mkdir -p dist/dmg 14 | 15 | # Empty the dmg folder. 16 | rm -rf dist/dmg/* 17 | 18 | # Copy the app bundle to the dmg folder. 19 | cp -a "dist/FreeTeX.app" dist/dmg 20 | 21 | # If the DMG already exists, delete it. 22 | test -f "dist/FreeTeX.dmg" && rm "dist/FreeTeX.dmg" 23 | create-dmg \ 24 | --volname "FreeTeX" \ 25 | --volicon "images/icon.icns" \ 26 | --window-pos 200 120 \ 27 | --window-size 600 300 \ 28 | --icon-size 100 \ 29 | --icon "FreeTeX.app" 175 120 \ 30 | --hide-extension "FreeTeX.app" \ 31 | --app-drop-link 425 120 \ 32 | "dist/FreeTeX.dmg" \ 33 | "dist/dmg/" 34 | -------------------------------------------------------------------------------- /test_imgs/0000000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000000.png -------------------------------------------------------------------------------- /test_imgs/0000001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000001.png -------------------------------------------------------------------------------- /test_imgs/0000002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000002.png -------------------------------------------------------------------------------- /test_imgs/0000003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000003.png -------------------------------------------------------------------------------- /test_imgs/0000004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000004.png -------------------------------------------------------------------------------- /test_imgs/0000005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000005.png -------------------------------------------------------------------------------- /test_imgs/0000006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000006.png -------------------------------------------------------------------------------- /test_imgs/0000007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000007.png -------------------------------------------------------------------------------- /test_imgs/0000008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000008.png -------------------------------------------------------------------------------- /test_imgs/0000009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000009.png -------------------------------------------------------------------------------- /test_imgs/0000010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000010.png -------------------------------------------------------------------------------- /test_imgs/0000011.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000011.png -------------------------------------------------------------------------------- /test_imgs/0000012.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000012.png -------------------------------------------------------------------------------- /test_imgs/0000013.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000013.png -------------------------------------------------------------------------------- /test_imgs/0000014.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/test_imgs/0000014.png -------------------------------------------------------------------------------- /tools/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/tools/__init__.py -------------------------------------------------------------------------------- /tools/clipboard_handler.py: -------------------------------------------------------------------------------- 1 | from PyQt5.QtCore import QObject, pyqtSignal 2 | from PyQt5.QtGui import QClipboard, QImage 3 | from PyQt5.QtWidgets import QApplication 4 | 5 | class ClipboardHandler(QObject): 6 | """ 7 | 剪切板处理器,负责处理从剪切板粘贴内容 8 | 功能: 9 | 1. 监听Ctrl+V快捷键 10 | 2. 获取剪切板中的图片或文本 11 | 3. 发出信号通知主窗口处理 12 | """ 13 | image_received = pyqtSignal(QImage) # 当剪切板中有图片时发出 14 | text_received = pyqtSignal(str) # 当剪切板中有文本时发出 15 | 16 | def __init__(self, parent=None): 17 | super().__init__(parent) 18 | self.clipboard = QApplication.clipboard() 19 | 20 | def handle_paste(self): 21 | """处理粘贴操作""" 22 | if self.clipboard.mimeData().hasImage(): 23 | # 处理图片 24 | image = self.clipboard.image() 25 | if not image.isNull(): 26 | self.image_received.emit(image) 27 | elif self.clipboard.mimeData().hasText(): 28 | # 处理文本 29 | text = self.clipboard.text() 30 | if text.strip(): 31 | self.text_received.emit(text) -------------------------------------------------------------------------------- /tools/fp32tofp16.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import os 3 | 4 | 5 | def convert_to_fp16(state_dict: dict) -> dict: 6 | """将 state_dict 中所有 float32 张量转换为 float16""" 7 | return { 8 | k: v.half() if isinstance(v, torch.Tensor) and v.dtype == torch.float32 else v 9 | for k, v in state_dict.items() 10 | } 11 | 12 | 13 | def convert_pth_to_fp16_keep_structure(input_path, output_path=None): 14 | print(f"加载模型文件: {input_path}") 15 | data = torch.load(input_path, map_location="cpu") 16 | 17 | if "model" in data: 18 | data["model"] = convert_to_fp16(data["model"]) 19 | elif "state_dict" in data: 20 | data["state_dict"] = convert_to_fp16(data["state_dict"]) 21 | else: 22 | data = convert_to_fp16(data) 23 | 24 | if output_path is None: 25 | base, _ = os.path.splitext(input_path) 26 | output_path = base + ".fp16.pth" 27 | 28 | torch.save(data, output_path) 29 | print(f"已保存 fp16 模型: {output_path}") 30 | 31 | 32 | if __name__ == "__main__": 33 | convert_pth_to_fp16_keep_structure("models/unimernet_small/unimernet_small.pth") 34 | -------------------------------------------------------------------------------- /unimernet/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Copyright (c) 2022, salesforce.com, inc. 3 | All rights reserved. 4 | SPDX-License-Identifier: BSD-3-Clause 5 | For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 6 | """ 7 | 8 | import os 9 | import sys 10 | 11 | from omegaconf import OmegaConf 12 | 13 | from unimernet.common.registry import registry 14 | 15 | from unimernet.datasets.builders import * 16 | from unimernet.models import * 17 | from unimernet.processors import * 18 | from unimernet.tasks import * 19 | 20 | 21 | root_dir = os.path.dirname(os.path.abspath(__file__)) 22 | default_cfg = OmegaConf.load(os.path.join(root_dir, "configs/default.yaml")) 23 | 24 | registry.register_path("library_root", root_dir) 25 | repo_root = os.path.join(root_dir, "..") 26 | registry.register_path("repo_root", repo_root) 27 | cache_root = os.path.join(repo_root, default_cfg.env.cache_root) 28 | registry.register_path("cache_root", cache_root) 29 | 30 | registry.register("MAX_INT", sys.maxsize) 31 | registry.register("SPLIT_NAMES", ["train", "val", "test"]) 32 | -------------------------------------------------------------------------------- /unimernet/common/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/common/__init__.py -------------------------------------------------------------------------------- /unimernet/common/gradcam.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | from matplotlib import pyplot as plt 3 | from scipy.ndimage import filters 4 | from skimage import transform as skimage_transform 5 | 6 | 7 | def getAttMap(img, attMap, blur=True, overlap=True): 8 | attMap -= attMap.min() 9 | if attMap.max() > 0: 10 | attMap /= attMap.max() 11 | attMap = skimage_transform.resize(attMap, (img.shape[:2]), order=3, mode="constant") 12 | if blur: 13 | attMap = filters.gaussian_filter(attMap, 0.02 * max(img.shape[:2])) 14 | attMap -= attMap.min() 15 | attMap /= attMap.max() 16 | cmap = plt.get_cmap("jet") 17 | attMapV = cmap(attMap) 18 | attMapV = np.delete(attMapV, 3, 2) 19 | if overlap: 20 | attMap = ( 21 | 1 * (1 - attMap**0.7).reshape(attMap.shape + (1,)) * img 22 | + (attMap**0.7).reshape(attMap.shape + (1,)) * attMapV 23 | ) 24 | return attMap 25 | -------------------------------------------------------------------------------- /unimernet/configs/datasets/formula/formula_eval.yaml: -------------------------------------------------------------------------------- 1 | datasets: 2 | formula_rec_eval: 3 | data_type: images 4 | build_info: 5 | images: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/val 6 | annotation: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/pdfmath.txt -------------------------------------------------------------------------------- /unimernet/configs/datasets/formula/formula_train.yaml: -------------------------------------------------------------------------------- 1 | datasets: 2 | formula_rec_train: 3 | data_type: images 4 | build_info: 5 | images: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/train 6 | annotation: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/pdfmath.txt -------------------------------------------------------------------------------- /unimernet/configs/datasets/formula/multi_scale_formula_train.yaml: -------------------------------------------------------------------------------- 1 | datasets: 2 | multi_scale_formula_rec_train: 3 | data_type: images 4 | build_info: 5 | images: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/train 6 | annotation: /mnt/petrelfs/share_data/hanxiao/latex-ocr/pdf/pdfmath.txt 7 | 8 | vis_processor: 9 | train: 10 | name: "formula_image_multi_scale_train" 11 | all_scales: 12 | - [ 96, 336 ] 13 | - [ 128, 448 ] 14 | - [ 192, 672 ] 15 | - [ 288, 1008 ] 16 | - [ 384, 1344 ] 17 | 18 | text_processor: 19 | train: 20 | name: "blip_caption" 21 | max_words: 256 -------------------------------------------------------------------------------- /unimernet/configs/default.yaml: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022, salesforce.com, inc. 2 | # All rights reserved. 3 | # SPDX-License-Identifier: BSD-3-Clause 4 | # For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 5 | 6 | env: 7 | # For default users 8 | # cache_root: "cache" 9 | # For internal use with persistent storage 10 | cache_root: "/export/home/.cache/vigc" 11 | -------------------------------------------------------------------------------- /unimernet/configs/models/unimernet_base.yaml: -------------------------------------------------------------------------------- 1 | model: 2 | arch: unimernet 3 | load_finetuned: False 4 | load_pretrained: False 5 | pretrained: "path/to/pretrained/weight" 6 | finetuned: "" 7 | tokenizer_name: nougat 8 | tokenizer_config: 9 | path: ./models/unimernet 10 | model_name: unimernet 11 | model_config: 12 | max_seq_len: 384 13 | 14 | 15 | preprocess: 16 | vis_processor: 17 | train: 18 | name: "formula_image_train" 19 | image_size: 20 | - 192 21 | - 672 22 | eval: 23 | name: "formula_image_eval" 24 | image_size: 25 | - 192 26 | - 672 27 | text_processor: 28 | train: 29 | name: "blip_caption" 30 | eval: 31 | name: "blip_caption" 32 | -------------------------------------------------------------------------------- /unimernet/datasets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/datasets/__init__.py -------------------------------------------------------------------------------- /unimernet/datasets/datasets/formula_multi_scale.py: -------------------------------------------------------------------------------- 1 | import torch 2 | from .formula import Im2LatexDataset 3 | 4 | 5 | class MultiScaleIm2LatexDataset(Im2LatexDataset): 6 | 7 | def __getitem__(self, index): 8 | ann = self.samples[index] 9 | try: 10 | pil_image = self._read_image(ann) 11 | image = self.vis_processor(pil_image) 12 | except Exception: 13 | return self[(index + 1) % len(self)] 14 | if image is None: 15 | return self[(index + 1) % len(self)] 16 | equation = ann["equation"] 17 | return {"image": image, "text_input": equation, "id": index, "raw_image": pil_image} 18 | 19 | def collater(self, samples): 20 | self.vis_processor.reset_scale() 21 | image_list, question_list, id_list = [], [], [] 22 | 23 | for sample in samples: 24 | image_list.append(self.vis_processor(sample["raw_image"])) 25 | question_list.append(sample["text_input"]) 26 | id_list.append(sample["id"]) 27 | 28 | return { 29 | "image": torch.stack(image_list, dim=0), 30 | "text_input": question_list, 31 | "id": id_list 32 | } 33 | -------------------------------------------------------------------------------- /unimernet/models/blip2_models/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/models/blip2_models/__init__.py -------------------------------------------------------------------------------- /unimernet/models/unimernet/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/models/unimernet/__init__.py -------------------------------------------------------------------------------- /unimernet/processors/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Copyright (c) 2022, salesforce.com, inc. 3 | All rights reserved. 4 | SPDX-License-Identifier: BSD-3-Clause 5 | For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 6 | """ 7 | 8 | from unimernet.processors.base_processor import BaseProcessor 9 | 10 | 11 | from unimernet.processors.blip_processors import ( 12 | BlipImageTrainProcessor, 13 | Blip2ImageTrainProcessor, 14 | BlipImageEvalProcessor, 15 | BlipCaptionProcessor, 16 | ) 17 | 18 | from unimernet.processors.formula_processor import ( 19 | FormulaImageTrainProcessor, 20 | FormulaImageEvalProcessor, 21 | FormulaImageMultiScaleTrainProcessor, 22 | ) 23 | 24 | from unimernet.common.registry import registry 25 | 26 | __all__ = [ 27 | "BaseProcessor", 28 | "BlipCaptionProcessor", 29 | ] 30 | 31 | 32 | def load_processor(name, cfg=None): 33 | """ 34 | Example 35 | 36 | >>> processor = load_processor("alpro_video_train", cfg=None) 37 | """ 38 | processor = registry.get_processor_class(name).from_config(cfg) 39 | 40 | return processor 41 | -------------------------------------------------------------------------------- /unimernet/processors/base_processor.py: -------------------------------------------------------------------------------- 1 | """ 2 | Copyright (c) 2022, salesforce.com, inc. 3 | All rights reserved. 4 | SPDX-License-Identifier: BSD-3-Clause 5 | For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 6 | """ 7 | 8 | from omegaconf import OmegaConf 9 | 10 | 11 | class BaseProcessor: 12 | def __init__(self): 13 | self.transform = lambda x: x 14 | return 15 | 16 | def __call__(self, item): 17 | return self.transform(item) 18 | 19 | @classmethod 20 | def from_config(cls, cfg=None): 21 | return cls() 22 | 23 | def build(self, **kwargs): 24 | cfg = OmegaConf.create(kwargs) 25 | 26 | return self.from_config(cfg) 27 | -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/__init__.py -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost1.png -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost2.png -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost3.png -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost4.jpg -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost5.jpg -------------------------------------------------------------------------------- /unimernet/processors/formula_processor_helper/frost/frost6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zstar1003/FreeTex/bc57853925992710eeae3dacf0fdadcc20fb8189/unimernet/processors/formula_processor_helper/frost/frost6.jpg -------------------------------------------------------------------------------- /unimernet/runners/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Copyright (c) 2022, salesforce.com, inc. 3 | All rights reserved. 4 | SPDX-License-Identifier: BSD-3-Clause 5 | For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 6 | """ 7 | 8 | from unimernet.runners.runner_base import RunnerBase 9 | from unimernet.runners.runner_iter import RunnerIter 10 | 11 | __all__ = ["RunnerBase", "RunnerIter"] 12 | -------------------------------------------------------------------------------- /unimernet/tasks/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | Copyright (c) 2022, salesforce.com, inc. 3 | All rights reserved. 4 | SPDX-License-Identifier: BSD-3-Clause 5 | For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause 6 | """ 7 | 8 | from unimernet.common.registry import registry 9 | from unimernet.tasks.base_task import BaseTask 10 | from unimernet.tasks.unimernet_train import UniMERNet_Train 11 | 12 | 13 | def setup_task(cfg): 14 | assert "task" in cfg.run_cfg, "Task name must be provided." 15 | 16 | task_name = cfg.run_cfg.task 17 | task = registry.get_task_class(task_name).setup_task(cfg=cfg) 18 | assert task is not None, "Task {} not properly registered.".format(task_name) 19 | 20 | return task 21 | 22 | 23 | __all__ = [ 24 | "BaseTask", 25 | "UniMERNet_Train", 26 | ] 27 | --------------------------------------------------------------------------------