精华内容
下载资源
问答
  • 可以支持单页图片识别、打开一个文件夹图片批量识别(后期正计划一个文件夹内的多个文件夹分组识别,没需求就没做) PDF文件文字识别怎么弄,现将PDF拆成图片,做了个功能批量PDF拆成图片后批量导入图片再识别 ...

    软件不需要安装,直接双击打开就可以用,废话不多说直接上图好了,方便说明问题

    前段时间有人跟我讲说要批量图片(批量名片识别、批量照片识别等)识别,然后就下来研究了一下

    可以支持单页图片识别、打开一个文件夹图片批量识别(后期正计划一个文件夹内的多个文件夹分组识别,没需求就没做)

    PDF文件文字识别怎么弄,现将PDF拆成图片,做了个功能批量PDF拆成图片后批量导入图片再识别

    开发语言C#、基于Net4.5框架做的,软件支持win7以上系统,苹果的文字识别就先暂时不开发

    说说有哪些功能吧

    第一、支持语言:中英文、法语、俄语、葡萄牙、俄语、德语、韩语、日语这些需要更多的还可以加;

    第二、PDF拆图:可以将多个PDF拆成图,分组存放指定文件夹、便于按文件夹批量导入图片等;

    第三、图片压缩:图片太大影响识别,所以我们做了一个图片压缩的工具,可以将图片的范围控制在可识别范围;

               PS:建议图片在4M的范围内,像素也不易过高4096X4096太高了就不支持了

    第四、一键复制:可以将识别出来的文字一键复制出来,方便粘贴到指定位置;

    第五、一键导出:可以将文字导出至记事本txt保存起来,为什么不是word,比较难控制格式哈不在这上面多花精力了

    第六、识别过程中可中途暂停,没有写继续,用的时候发现错误了,就再来一遍,或者把识别的删掉,从没识别的开始

     

    速度嘛2-3秒一页,看图片大小,软件识别需要联网使用,基于人工智能文字识别做的,也有单机版本的准确率不是很高

    有些国际友人问:有没有英语翻译版本的哈,英文的需要自己翻译,或者找个你自己找个翻译我跟你对应翻译上去

    欢迎大家下方提出好的功能和建议,我再来完善完善 

    百度网盘链接:https://pan.baidu.com/s/1zIzGB55PO9h5_xECs4U5YQ  提取码:fvjc 

    土豪下载链接:https://download.csdn.net/download/bbyn1314/11229917

    展开全文
  • 最近项目遇到,四个Tab选项,其中一个...百度了半天,说是给android:drawablePadding一个负值,本以为图片会向左侧移动,但是没想到文字却向图片靠拢.,当时那叫一个无语. 想了半天,既然文字图片移动,那么我就给Rad

    最近项目遇到,四个Tab选项,其中一个Tab涉及到排序,因此需要给RadioButton加上两张图片表示升序或者降序。但是 用drawableRight加上图片之后,图片离总是在边上,离文字太远。百度了半天,可以给android:drawablePadding一个负值,本以为图片会向左侧移动,但是没想到文字却向图片靠拢.,整体则变成右对齐,就当时那叫一个无语.

    想了半天,既然文字向图片移动,那么我就给RadioButton来一个PaddingRight(比如给DrawablePadding负值为-15dip,那么就给PaddingRight15dip),然后,又变成居中了。虽然办法比较笨,但是解决了。

    下面是代码:

    XML:

    <RadioGroup
    					android:id="@+id/rg_nav_content"
    					android:layout_width="fill_parent"
    					android:layout_height="wrap_content"
    					android:background="#F2F2F2"
    					android:orientation="horizontal">
    				<RadioButton
    						android:id="@+id/tab1"
    						android:text="综合"
    						style="@style/mall_goods_tab"
    						android:checked="true"/>
    				<RadioButton
    						android:id="@+id/tab2"
    						android:text="销量"
    						style="@style/mall_goods_tab"
    						/>
    				<RadioButton
    						android:id="@+id/tab3"
    						android:text="价格"
    						android:paddingRight="20dp"
    						style="@style/mall_goods_tab"
    						android:button="@drawable/sort_up"
    						android:drawablePadding="-15dp"
    				        android:drawableRight="@drawable/sort_up"
    						/>
    				<RadioButton
    						android:id="@+id/tab4"
    						android:text="新品"
    						style="@style/mall_goods_tab"
    						/>
    
    
    			</RadioGroup>
    style
    <style name="mall_goods_tab">
    		<item name="android:textSize">@dimen/sp_18</item>
    		<item name="android:textColor">@drawable/mall_tab_selector</item>
    		<item name="android:gravity">center</item>
    		<item name="android:layout_width">fill_parent</item>
    		<item name="android:layout_height">@dimen/dp_66</item>
    		<item name="android:button">@null</item>
    		<item name="android:paddingTop">@dimen/dp_15</item>
    		<item name="android:paddingBottom">@dimen/dp_15</item>
    		<item name="android:singleLine">true</item>
    		<item name="android:background">@color/white</item>
    		<item name="android:layout_weight">1.0</item>
    	</style>

    效果图:




    如果帮到你了,请帮忙留个脚印,谢谢!

    展开全文
  • Android仿微信图片编辑处理:文字,马赛克,裁剪,涂鸦,旋转图片等 如图: 这项目实现了微信图片编辑处理的关键功能,如给一张图片添加文字,打上马赛克,裁剪图片,在图片上手势涂鸦。引用了kareluo的...

    Android仿微信图片编辑处理:文字,马赛克,裁剪,涂鸦,旋转图片等

    如图:

    这个项目实现了微信图片编辑处理的关键功能,如给一张图片添加文字,打上马赛克,裁剪图片,在图片上手势涂鸦。引用了kareluo的Imaging库,但是kareluo的Imaging库示例代码有两个遗留问题需要重新解决:

    1,它是用kotlin写的,我重新把kotlin代码部分用Java写了一遍。

    2,kareluo的Imaging库中,编辑图片的IMGEditActivity接受两种传入的资源路径类型:asset和file。Android 4.4以下可以直接获取再拼装。但在高版本(大于4.4,API19)就不好办,且在大于4.4版本的机器上,用相册选择器选中的图片资源是以content://开头表示的,这需要把content://这样的路径重新转为file传过去。

    我把上述两个问题解决后写了简单的测试:

    package zhangphil.app;
    
    import android.annotation.TargetApi;
    import android.content.ContentResolver;
    import android.content.ContentUris;
    import android.content.Context;
    import android.content.Intent;
    import android.database.Cursor;
    import android.graphics.Bitmap;
    import android.net.Uri;
    import android.os.Build;
    import android.os.Environment;
    import android.provider.DocumentsContract;
    import android.provider.MediaStore;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    
    import java.io.File;
    
    import me.kareluo.imaging.IMGEditActivity;
    
    public class MainActivity extends AppCompatActivity {
        public static final int REQ_SELECT_PHOTO = 0xf0a;
        private Bitmap avatarBitMap = null;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    seleteImg();
                }
            });
        }
    
        private void seleteImg() {
            Intent intent = new Intent();
            intent.setType("image/*");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(intent, REQ_SELECT_PHOTO);
        }
    
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            switch (requestCode) {
                case REQ_SELECT_PHOTO: {
                    // 选取照片。
                    if (resultCode == RESULT_OK && data != null) {
                        try {
                            avatarBitMap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), data.getData());
                            //此处获得了Bitmap图片,可以用作设置头像等等。
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
    
                        Intent intent = new Intent(this, IMGEditActivity.class);
    
                        try {
                            String uri_path = getFilePathByUri(this, data.getData());
                            Uri uri = Uri.fromFile(new File(uri_path));
                            System.out.println(uri.toString());
    
                            intent.putExtra(IMGEditActivity.EXTRA_IMAGE_URI, uri);
                            //intent.putExtra(IMGEditActivity.EXTRA_IMAGE_SAVE_PATH,);
                            startActivity(intent);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
    
                    break;
                }
    
                default:
                    break;
            }
        }
    
        @TargetApi(19)
        public static String getFilePathByUri(Context context, Uri uri) {
            String path = null;
            // 以 file:// 开头的
            if (ContentResolver.SCHEME_FILE.equals(uri.getScheme())) {
                path = uri.getPath();
                return path;
            }
            // 以 content:// 开头的,比如 content://media/extenral/images/media/17766
            if (ContentResolver.SCHEME_CONTENT.equals(uri.getScheme()) && Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
                Cursor cursor = context.getContentResolver().query(uri, new String[]{MediaStore.Images.Media.DATA}, null, null, null);
                if (cursor != null) {
                    if (cursor.moveToFirst()) {
                        int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                        if (columnIndex > -1) {
                            path = cursor.getString(columnIndex);
                        }
                    }
                    cursor.close();
                }
                return path;
            }
            // 4.4及之后的 是以 content:// 开头的,比如 content://com.android.providers.media.documents/document/image%3A235700
            if (ContentResolver.SCHEME_CONTENT.equals(uri.getScheme()) && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
                if (DocumentsContract.isDocumentUri(context, uri)) {
                    if (isExternalStorageDocument(uri)) {
                        // ExternalStorageProvider
                        final String docId = DocumentsContract.getDocumentId(uri);
                        final String[] split = docId.split(":");
                        final String type = split[0];
                        if ("primary".equalsIgnoreCase(type)) {
                            path = Environment.getExternalStorageDirectory() + "/" + split[1];
                            return path;
                        }
                    } else if (isDownloadsDocument(uri)) {
                        // DownloadsProvider
                        final String id = DocumentsContract.getDocumentId(uri);
                        final Uri contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"),
                                Long.valueOf(id));
                        path = getDataColumn(context, contentUri, null, null);
                        return path;
                    } else if (isMediaDocument(uri)) {
                        // MediaProvider
                        final String docId = DocumentsContract.getDocumentId(uri);
                        final String[] split = docId.split(":");
                        final String type = split[0];
                        Uri contentUri = null;
                        if ("image".equals(type)) {
                            contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
                        } else if ("video".equals(type)) {
                            contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
                        } else if ("audio".equals(type)) {
                            contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
                        }
                        final String selection = "_id=?";
                        final String[] selectionArgs = new String[]{split[1]};
                        path = getDataColumn(context, contentUri, selection, selectionArgs);
                        return path;
                    }
                }
            }
            return null;
        }
    
        public static String getDataColumn(Context context, Uri uri, String selection, String[] selectionArgs) {
            Cursor cursor = null;
            String column = MediaStore.Images.Media.DATA;
            String[] projection = {column};
            try {
                cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs, null);
                if (cursor != null && cursor.moveToFirst()) {
                    int index = cursor.getColumnIndexOrThrow(column);
                    return cursor.getString(index);
                }
            } finally {
                if (cursor != null)
                    cursor.close();
            }
            return null;
        }
    
        /**
         * @param uri The Uri to check.
         * @return Whether the Uri authority is ExternalStorageProvider.
         */
        public static boolean isExternalStorageDocument(Uri uri) {
            return "com.android.externalstorage.documents".equals(uri.getAuthority());
        }
    
        /**
         * @param uri The Uri to check.
         * @return Whether the Uri authority is DownloadsProvider.
         */
        public static boolean isDownloadsDocument(Uri uri) {
            return "com.android.providers.downloads.documents".equals(uri.getAuthority());
        }
    
        /**
         * @param uri The Uri to check.
         * @return Whether the Uri authority is MediaProvider.
         */
        public static boolean isMediaDocument(Uri uri) {
            return "com.android.providers.media.documents".equals(uri.getAuthority());
        }
    
        /**
         * @param uri The Uri to check.
         * @return Whether the Uri authority is Google Photos.
         */
        public static boolean isGooglePhotosUri(Uri uri) {
            return "com.google.android.apps.photos.content".equals(uri.getAuthority());
        }
    }
    

    亲测在Android8.0上正常。

    完整可运行的项目已经整理出来,上传到github:https://github.com/zhangphil/WeiXinPictureTool

    展开全文
  • 用户提问第一种方法: 添加一个DIV,采用绝对定位,图片所属DIV为基准 文字 第二种方法:图片作为背景图片 wenzi推荐答案第一种方法:添加一个DIV,采用绝对定位,图片所属DIV为基准 文字第二种方法:图片作为背景...

    用户提问

    第一种方法: 添加一个DIV,采用绝对定位,图片所属DIV为基准 文字 第二种方法:图片作为背景图片 wenzi

    推荐答案

    第一种方法:

    添加一个DIV,采用绝对定位,图片所属DIV为基准

    文字

    第二种方法:图片作为背景图片

    wenzi

    辅助答案

    用户:西瓦的守护

    2017年12月18日

    html+css在图片上添加文字有两种方法如下:

    1.添加一个DIV,采用绝对定位,图片所属DIV为基准

    文字

    第二种方法:图片作为背景图片

    wenzi

    背景图片现在有了,然后在上面写上你需要写的字就可以了。

    用户:yangyw@opencart.cn

    2017年12月06日

    如果对图片不做滤镜等特殊效果处理的话可以考虑做

    背景,但两个
    嵌套的方法并不好控制,如果这两个块是空的,那他们确实可以嵌套,但如果都有了内容,其中一个块的内容就会被挤出来,即便
    是真的嵌套在一起的。

    用户:soft0

    2017年12月25日

    第一种方法是写两个 div ,第一个div放图片,并且放在下面;第二个div放文字,并且放在上面。

    第二种方法是写一个div ,图片作为背景图,然后div中放文字。

    用户:馨蕾1212

    2018年01月06日

    图片设置为元素背景,然后就可以在元素里写文字了,看上去就像在图片上添加文字

    展开全文
  • 原文标题:识文精灵(ocrwiz):如何把在线文字识别(图片文字)OCR的互动体验提升到极致 截图——&gt;粘贴图片(Ctrl+V)——&gt;拷贝结果(Ctrl+C),只需要几秒钟,就可以快速识别并得到图片中的文字,体验...
  • 我们在平时的工作和学习生活中,一旦碰到一些需要拷贝下来的图片上的文字,通常我们的做法就是手动抄录文字,或者对照图片在电脑上敲打这些文字。 其实,现在已经有很多图片文字识别软件,我们可以直接利用工具来...
  •  1.0 :在图片上增加文字,是图片编辑中非常常见的需求。  1.1 :无demo说话不硬气,上github地址:https://github.com/horisea/PictureWhitening   欢迎star,你的星星是我持续创作的动力 二:上一下效果...
  • 马化腾说过腾讯的服务器天存储几亿的图片,可见图片已经成为移动社交必不可少的元素。而用户往往喜欢在原图基础上编辑文字或者添加配图,达到图文并茂、生动形象的目的,以表达此时此地此景此物。接下来给大家...
  • STM32如何在LCD上显示单词、文字图片等

    万次阅读 多人点赞 2020-05-31 20:42:01
    本文将介绍STM32F103R6如何在LCD12864上显示文字图片 液晶屏,LCD12864有128*64像素点 、如何在LCD上显示行字符串? 首先找到液晶屏驱动文件LQ12864.c LQ12864.c文件中的LCD_P6x8Str()函数就是用来打印字符...
  • Python识别图片中的文字

    万次阅读 多人点赞 2020-05-17 12:49:59
    不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有篇文章,你非常喜欢,但是不能复制。或者像百度文档一样,只能复制部分,这时候我们就会选择截图保存。
  • div内图片文字水平垂直居中

    万次阅读 2017-11-29 17:32:36
    大小不固定的图片、多行文字的水平垂直居中 本文综述 想必写css的都知道如何让单行文字在高度固定的容器内垂直居中,但是您知道或者想过让行数不固定的文字在高度固定的容器内垂直居中呢?本文将会告诉你如何实现...
  • 造成这种字体显示不全,显示一半同时多行文字点点重叠情况原因: css行高小于CSS字体大小。 最简单方法: 设置line-height的值大于或等于字体大小 二.div css最后文字字体显示一半显示不全 1.最后...
  • 使用百度文字识别API进行图片文字的识别

    千次阅读 多人点赞 2019-06-17 22:12:15
    今天,为了满足我女朋友作业的需求,我使用Python制作了一个图片文字的小应用。 一. 申请Baidu通用文字识别接口。 1.先在百度AI开放平台注册账号(点击这里进入百度智能云)。一般使用百度账号即可。 2.注册成功...
  • 【php】文字图片

    千次阅读 2015-10-23 17:07:18
    文字转化为图片绝对是好注意。验证码的基本生成原理也与此差不多,只是对再对文字转化为图片的生成过程再复杂化,让扫描机器无法识别。php的文字图片很简单,先在php的安装目录打开php.ini,找到extension=...
  • 招教你利用画图工具修改图片上的文字腾讯视频/爱奇艺/优酷/外卖 充值4折起相信很多小伙伴在日常办公中都会用到画图工具,如果我们想要利用该工具修改图片上的文字该怎么做呢?方法很简单,下面小编就来为大家介绍...
  • 透明窗口(窗口上面文字图片等内容不透明)的实现
  • 高效率OCR场景文字图片合成工具发布!

    千次阅读 多人点赞 2021-04-03 10:15:21
    OCR,光学字符识别(OPTICAL ...作为计算机视觉领域的OCR识别在训练的时候当然也会需要大量的图片数据来供神经网络的学习,一般需要数以千万计的图片才能训练一个文字识别系统,才能达到识别文字的目的。但是如果采用
  • Python3.6实现图片文字

    万次阅读 多人点赞 2018-05-25 23:41:44
    主要利用Python的第三方库pytesseract,实现图片文字。但转换效率一般,且有一定的错误,并带有许多空行。可适用于获取图片中的文字,但阅读性不佳。
  • Python3.6实现图片文字识别和PDF转WORD图片文字提取- - 需求来源 - -- - 代码实现 - -PDF转WORD- - 需求来源 - -- - 代码实现 - -窗口实现- - 使用PyQt5创建 - -- - 使用tkinter 创建 - -最终实现- - 实现说明 - -- ...
  • python图片文字识别

    千次阅读 2020-10-12 15:25:42
    但是当我们想用到里面的文字时,还是要一个字一个字打出来。那么我们能不能直接识别图片中的文字呢?答案是肯定的。 二、Tesseract 文字识别是ORC的一部分内容,ORC的意思是光学字符识别,通俗讲就是文字识别。...
  • java文字生成图片

    千次阅读 2016-06-24 18:04:30
    1.应用 //测试生成图片 public void test01(){ int width = 100; int height = 100; String s = "你好"; File fi
  • js爬取网页文字图片 html爬取网页信息博主的话功能简述运行效果项目代码代码简述 博主的话 可以爬取许多图片网站上的图片(一些很完善的网站不可以)。声明:本网页代码仅供朋友们学习使用, 切商用事项大家...
  • 最近做app时遇到一个很奇怪的问题:按照实例竟然不显示图片文字。找了好久原因,原来是因为android:id的命名问题,如下代码所示,不能带下划线,否则识别不了,造成图片文字显示不出来。 home_gridview" ...
  • 图片文字 1.利用OCR可以转为excel文件 原图 2.这里用线上的 zhcn.109876543210.com/ 3.我们转为.xls文件 转换后成这样子 二、文字转JSON (利用Node) 1.新建package.json. 内容为: { "name": "abc...
  • 在实际的应用中,策划提到了一个要求,图片和文本一起居中,在unity中文本简单的居中很容易实现,但是文字图片确实让我不知所措,在经过大神的指导后,做出了以下的解决方案。 将图片文字放在一个节点下,在...
  • 对于word中需要插入大量类型相似的图片,使用excel插入图片、题注、文字描述内容是非常方便的,先使用excel编辑好各个图片对应的题注、描述内容,通过excel也可以很快的调整这些内容,比如统一修改题注、调整顺序...
  • 前面几节讲了图片上画线 这一节 我们简单讲一讲 给图片上添加文字的方法 我们继续使用上节的代码(代码下载地址见上节末尾 ...创建一个类 继承自UIView 起名: AddText 定义一个协议 当输入完成之后 将内
  • Java实现可换行文字图片

    千次阅读 2019-06-14 11:31:24
    因为会被检测认为是相同的原创文章,所以很多公众号运营者就想到把文字转成图片来发文,这样系统就无法检测重复性了,这样做某种程度上确实侵犯了原创版权,所以笔者不建议不鼓励不支持这样做,但是这需求还是很...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 603,541
精华内容 241,416
关键字:

一个等字的图片