用一个实例看如何分享大量照片 续篇一

继续上篇的实例分享,在此罗列一些应该注意的细节,以便在下次可以更加省时省力。

  1. 最重要的是呈现构想,如按活动/主题、班级/板块、地区/国家等等,这些都应该事先计划好,事后改动工作量巨大,因为太容易出错,这方面的调整相当费神。

  2. 文件名的规则要事先想好,文件名可以包括排序、分组和内容说明,可以包含中文。但默认对数字123的排序是文本,而不是数字,文件名不易过长,要尽量描述清楚,这可以省略另外写图片描述,这方面的调整耗时但不耗神。

  3. 图片信息保持越完整,在多年以后就越有价值,当然如果含有敏感信息就应该尽可能在公开前要抹去。
    在这里插入图片描述
    在这里插入图片描述
    现在的手机照片还有地理信息,是否保留具体要看使用场景;在此最难的是软件的选择,因为可能性太多,所以无法具体,但关键也要看是否保留或抹去这些隐藏的信息。

  4. 图像资料一般来自各方,有些是来自已经整理过的资料,在本例中就遇到通过文件夹名来说明的资料,所以需要做批量处理

    下面是Linux命令脚本 changename.sh

    for i in `ls`; 
    do mv -f $i `echo "XXX提供_"$i`;
    done;
    

    可以批量在当前目录下的文件名加上前缀“XXX提供_”,执行此脚本-> ./changename.sh
    这就是一个半自动的小工具。

  5. 在上篇讲到,大图片都放在主文件夹里,然后small-img文件夹来分主题或服务群,在此分享一个在小图文件夹里调整次序的方法:

    <!DOCTYPE html // 加3位排序号 >  
    <html>
    <head> 
    <meta charset="utf-8"> 
    <title>吃在阳朔</title> 
    <link rel="stylesheet" href="./stylecol1500.css" />
    </head>
    <body class="stackedit">
    <style>
      div {
        float: left;
        height: 250px;
        margin: 5px 10px; /* 上下间距10px,左右间距20px */
      }
    </style>
    
    <h2>吃在阳朔</h2>
    
    
    
    <?php 
    define('IMAGEPATH', './ysfood/');
    function get_basename($filename){    
         return preg_replace('/^.+[\\\\\\/]/', '', $filename);    
     }
    
    foreach(glob(IMAGEPATH . '*.{jpg,JPG,jpeg,JPEG,png,PNG}', GLOB_BRACE) as $filename){ 
    $simgs[] = $filename;
    $imgs[] = get_basename($filename); 
    } 
    foreach ($imgs as $img) { // 获取文件名和大小 
    	$filePath = IMAGEPATH . $img; 
    	$fileName = get_basename($filePath); 
    	$fileSize = round(filesize(substr($fileName, 3)) / 1042, 2); 	// 文件大小转换为KB
    
    	// 生成大图路径  $bigImgPath = "{$fileName}";
        $bigImgPath = substr($fileName, 3);   // 切3位排序号
    
    	// 显示图片  
        
    	echo "<div><a href='$bigImgPath' target='_blank'><img src='$filePath' alt='$fileName' /></a> <br />";
        echo "文件大小: {$fileSize}KB <br />";
    	echo "$fileName<br /><br /> </div>";
    
       
    } ?> 
    
    </body>
    </html>
    

    原本小图的文件名跟大图是一模一样的,现在在小图文件名前加3位字符来调整默认排序的次序,上面的脚本就是针对文件夹“ysfood”进行此操作,只要在原小图文件名加三个字符,在需要时进行调整就可以任意改变显示次序。这个次序只对“ysfood”这个PHP+文件夹有效,对其他没有任何影响。

  6. 在上篇讲到PHP的呈现可以作为静态HTML存下来打包,以便在任何电脑上离线保存和浏览,为了方便移植在整个过程中使用的都是相对地址,最好在服务器LOCAL生成静态HTML,这样工作量最小。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/739318.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

redis高可用-主从同步

目录 一&#xff1a;背景 二&#xff1a;实现方式 三&#xff1a;实际使用 一&#xff1a;背景 上一节我们介绍了centos下redis下的安装配置&#xff0c;是在单台服务器部署一个redis服务&#xff0c;这种模式是单机模式下使用的&#xff0c;如果出现服务故障&#xff0c;re…

windows11关闭microsoft defender实时保护后会自动打开,怎么不让他打开

Windows 11中关闭Microsoft Defender的实时保护 打开windows安全中心 --> 点击病毒和威胁防护 --> 点击管理设置 -->关闭实时保护 单关闭后系统可能会在一段时间后自动重新开启以确保系统安全。如果你确实需要永久关闭实时保护&#xff0c;可以尝试以下方法。但请注…

RecyclerVIew->加速再减速的RecyclerVIew平滑对齐工具类SnapHelper

XML文件 ItemView的XML文件R.layout.shape_item_view <?xml version"1.0" encoding"utf-8"?> <FrameLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"100dp"android:layout_heig…

199.罗马数字转整数(力扣)

代码解决 class Solution { public:// 定义一个哈希表来存储罗马数字符号及其对应的整数值unordered_map<char, int> res {{I, 1},{V, 5},{X, 10},{L, 50},{C, 100},{D, 500},{M, 1000},};// 将罗马数字字符串转换为整数的函数int romanToInt(string s) {int num 0; …

【golang学习之旅】Go中的变量——基本数据类型(2)

系列文章 【golang学习之旅】使用VScode安装配置Go开发环境 【golang学习之旅】报错&#xff1a;a declared but not used 【golang学习之旅】Go 的基本数据类型 【golang学习之旅】深入理解字符串string数据类型 【golang学习之旅】go mod tidy 【golang学习之旅】记录一次 p…

pdf压缩大小,PDF压缩大小不影响清晰度

你是否曾为PDF文件过大而烦恼&#xff1f;想要分享或上传文件时&#xff0c;却因为它的体积而束手无策&#xff1f;别担心&#xff0c;今天我将为大家分享一些简单实用的 PDF 压缩技巧&#xff0c;让你的文件轻松压缩pdf。 打开“轻云处理pdf官网”&#xff0c; 的网站。然后上…

解决Element-ui的el-table固定列后出现的表格错位问题

问题情况大致是这样的&#xff1a; 查看官网 解决办法&#xff1a;

《计算机英语》 Unit 4 Information Management 信息管理

Section A Information Storage 信息存储 1. The importance of Information信息的重要性 词汇 reside vi属于&#xff0c;驻留 tablet n平板电脑 laptop n笔记本电脑 repository n仓库 claim n索赔 regulatory n法规 contractua…

苹果手机备忘录怎么长截屏或者导出

在快节奏的生活中&#xff0c;手机备忘录已成为我们随时记录重要信息和灵感的得力助手。然而&#xff0c;当我们想要保存或分享备忘录中的长内容时&#xff0c;苹果手机的截屏功能似乎就显得有些捉襟见肘了。 那么&#xff0c;苹果手机备忘录如何进行长截屏或者导出呢&#xf…

麻了!一觉醒来,代码全挂了。。

作为⼀名程序员&#xff0c;相信大家平时都有代码托管的需求。 相信有不少同学或者团队都习惯把自己的代码托管到GitHub平台上。 但是GitHub大家知道&#xff0c;经常在访问速度这方面并不是很快&#xff0c;有时候因为网络问题甚至根本连网站都打不开了&#xff0c;所以导致…

计算机Java项目|基于SpringBoot的厨艺交流平台设计与实现

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容&#xff1a;Java项目、Python项目、前端项目、人工智能与大数据、简…

STM32介绍和资料地址

STM32标准外设软件库 https://www.st.com.cn/zh/embedded-software/stm32-standard-peripheral-libraries.html 支持标准外设库的产品系列&#xff1a;

GWB—200JA型引伸计标定器

GWB一200JA型引伸计标定器&#xff0c;是一种纯机械式的高精度位移测微仪器。依据JJG762—2007引伸计检定规程要求&#xff0c;专门用于对各类引伸计的标定&#xff0c;也广泛用于位移传感器的检定及相应百分表、千分表的标定。 l、本仪器由精密微分测头及测量支架组成。该标定…

内网使用nexus3搭建npm私库方法

内网使用nexus3搭建npm私库大致分为下载tgz和批量上传两个步骤。如下。 第一步&#xff0c;批量下载tgz依赖。 新建一个文件夹&#xff0c;比如download&#xff1b;拷贝出项目中package.json或者package-lock.json。放进download文件夹中&#xff1b;确保电脑本地已经安装好n…

盛元广通数字孪生智能集控实验室管理系统

盛元广通数字孪生智能集控实验室管理系统可广泛应用于各类实验室场景&#xff0c;包括科研实验室、教学实验室、工业实验室等。通过实时监测、预测性维护、故障诊断与优化等功能&#xff0c;该系统能够提高实验室的运行效率、安全性和可靠性&#xff0c;降低运维成本。设计直观…

找出一个整型数组中的元素的最大值

这个问题在之前的文章中曾用其他方法解决&#xff0c;现在用类来处理&#xff0c;读者可以比较不同方法的特点。 编写程序&#xff1a; 运行结果&#xff1a; 程序分析&#xff1a; 程序看起来比较长&#xff0c;其实并不复杂&#xff0c;它包括以下3部分&#xff1a;…

C++必修:模版的入门到实践

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;C学习 贝蒂的主页&#xff1a;Betty’s blog 1. 泛型编程 首先让我们来思考一个问题&#xff0c;如何实现一个交换函数&#x…

scrapy模块的基础使用

scrapy模块是爬虫工作者最常用的一个模块之一&#xff0c;因它有许多好用的模板&#xff0c;和丰富的中间件&#xff0c;深受欢迎。 一&#xff0c;scrapy的安装 可以通过pypi的指引进行安装 在终端内输入以下代码&#xff1a; pip install scrapy 二&#xff0c;项目的建…

hive优化之逻辑类似or逻辑重复

今天拿到一个二次开发的需求&#xff0c;只是增加一个业务类型&#xff0c;开发起来倒是也蛮轻松。 但是&#xff0c;对自己的要求不难这么低&#xff0c;否则可替代性也太高了。 除了完成自己的那部分开发&#xff0c;当然展现自己实力的&#xff0c;可以是优化。 1&#x…

笔记:记录状态并判重的方法

题目&#xff08;八数码问题&#xff09; 编号为1-8的8个正方形滑块被摆成3行3列&#xff08;有一个格子留空&#xff09;&#xff0c;如下图所示 81573642 每次可以把与空格相邻的滑块&#xff08;有公共边才算相邻&#xff09;一道空格中&#xff0c;而它原来的位置就成为…