germany – On German bicycle direction signs, what does the background colour for bicycle highway pictograms indicate?

On this direction sign at Wixhausen near Darmstadt, Germany, several destination use a bicycle highway pictogram. Some of the pictograms have a black background, whereas others have a green background. What is the difference in meaning between the pictograms with a black background vs. the pictograms with a green background?

Bike freeway sign

This sign indicates Darmstadt and Arheiligen with a black-background pictogram, Egelsbach and Erzhausen with a green-background pictogram, and Frankfurt and Langen with both.

From context, it might mean green means finished and black means not finished, but I think that’s not consistent with signs I’ve seen elsewhere, and I would find it an unusual meaning for traffic signs, so it’d be interesting to have a confirmation.

I did not find an explanation at this list of traffic signs for cyclists. At this stv2go list bicycle highways aren’t mentioned at all.

customization – white fonts in white background in single product page

in WP woocommerce with Porto theme, inside the single product page where the categories and the brand are shown, the results are white on a white background and while they exist they do not appear,; no matter how hard I tried I could not change the color to make them appear

enter image description here

python – PyQt load images in background process

I am building an application that needs to load 100-200 images (really only limited by performance) and display them to the user in a sort of gallery. A good analogy would simply be Google Images. In a linear implementation loading 100 images takes roughly 3-6 seconds, during which the GUI is frozen. I tried offloading this to a background thread, but quickly learned that QPixmap is not thread-safe and can only be created in the GUI thread. So naturally I looked into multiprocessing and discovered that this is a much more difficult problem than I thought due to the GIL when it comes to threading, and lack of shared-state when it comes to multiprocessing…

So I was able to write a sample application that can load up a bunch of QLabels and populate them in the background using a series of threads, locks, queues, and processes which I have cobbled together into an ImageManger class. This involves creating the widgets in the main GUI thread, loading QImage's in a background process, pickling them, re-constructing a QImage in a background thread, and then finally using a signal to emit this new QImage from the background thread into the GUI thread where it is converted into a QPixmap.

Overall I am actually quite surprised at how well this is working out! However I am posting up on Code Review because I want to test my knowledge of threading, multiprocessing and concurrency in PyQt which is still somewhat rough ground for me. My questions are: have I done this in the best way? Is this overly complex and there is a much better solution? Can this be optimized further?

My requirements are that the GUI thread is blocked as little as possible, and there are placeholders for the images that get populated as they buffer. Speed is a concern, but I am more concerned about keeping the GUI fluid and if this adds a bit of time to the overall process I can live with that (and so can the users!).

Here’s my working code. Sorry for the large amount of lines, I have tried to slim it down as much as possible and broke things into classes/methods to keep them (hopefully) descriptive:

import sys, os
from PyQt5 import QtGui, QtCore, QtWidgets
from multiprocessing import Process, Manager, Queue

class App(QtWidgets.QDialog):
    def __init__(self):
        super().__init__()
        self.img_loader = ImageManager(self)
        self.img_loader.image_loaded.connect(self.on_image_loaded)
        self.img_loader.start()
        
        self.img_widgets = {}
        
        # gui
        
        self.layout = QtWidgets.QVBoxLayout()
        self.setLayout(self.layout)
        
        self.scroll_area = QtWidgets.QScrollArea()
        self.scroll_area.setWidgetResizable(True)
        self.layout.addWidget(self.scroll_area)
        
        img_scroll_parent = QtWidgets.QWidget()
        self.scroll_area.setWidget(img_scroll_parent)
        self.img_layout = QtWidgets.QVBoxLayout()
        img_scroll_parent.setLayout(self.img_layout)
        
        go_btn = QtWidgets.QPushButton('go')
        go_btn.clicked.connect(self.start_loading_images)
        self.layout.addWidget(go_btn)
        
    def start_loading_images(self):
        load_dir = r'' # <---- path to directory with TONS of images!
        for fn in os.listdir(load_dir):
            path = os.path.join(load_dir, fn)
            if not os.path.isdir(path):
                if os.path.splitext(fn)(1) in ('.png', '.jpg'):
                    widget = QtWidgets.QLabel('...loading...')
                    widget.setScaledContents(True)
                    widget.setFixedHeight(100)
                    self.img_layout.addWidget(widget)
                    
                    self.img_widgets(fn) = widget
                    self.img_loader.load_image(path)
    
    def on_image_loaded(self, path, qimage):
        fn = os.path.split(path)(1)
        if fn in self.img_widgets:
            widget = self.img_widgets(fn)
            pixmap = QtGui.QPixmap(qimage)
            if pixmap.isNull():
                print(f'Error loading {fn}')
                return
            
            h = pixmap.height()
            w = pixmap.width()
            widget.setText('')
            widget.setFixedWidth(int((widget.height() * w) / h)) # this was the fastest way I could find to set an image on a label and maintain aspect ratio.
            widget.setPixmap(pixmap)
            
    def closeEvent(self, event):
        self.img_loader.shutdown()
        super().closeEvent(event)
    
class ImageManager(QtCore.QObject):
    image_loaded = QtCore.pyqtSignal(str, QtGui.QImage)
    
    def __init__(self, parent):
        super().__init__(parent)
        self.work_queue = Queue()
        self.done_queue = Queue()
        self.manager = Manager()
        self.img_list = self.manager.list()
        
        self.signal_thread = self.SignalEmitter(self, self.done_queue, self.img_list)
        self.signal_thread.imgLoaded.connect(self._emit_image)
        
        self.proc_count = 4
        self.bg_procs = ()
        for _ in range(self.proc_count):
            bg_proc = Process(target=self._worker, args=(self.work_queue, self.done_queue, self.img_list,))
            self.bg_procs.append(bg_proc)
            
    def start(self):
        self.signal_thread.start()
        for p in self.bg_procs:
            p.start()
        
    def shutdown(self):
        # empty queues and insert poison pills
        while not self.work_queue.empty():
            self.work_queue.get()
        for _ in range(self.proc_count):
            self.work_queue.put(None)
        
        while not self.done_queue.empty():
            self.done_queue.get()
        self.done_queue.put(None)
        
        # ensure everything shuts down
        self.signal_thread.wait()
        for p in self.bg_procs:
            p.join()
        print('Image manager shutting down')
        
    def _emit_image(self, path, qimage):
        self.image_loaded.emit(path, qimage)
    
    def load_image(self, path):
        self.work_queue.put(path)
        print(f'Added {os.path.split(path)(1)} to queue.')
        
    class SignalEmitter(QtCore.QThread):
        imgLoaded = QtCore.pyqtSignal(str, QtGui.QImage)
        
        def __init__(self, parent, done_queue, img_list):
            super().__init__(parent)
            self.done_queue = done_queue
            self.img_list = img_list
            
        def run(self):
            while True:
                img_path = self.done_queue.get()
                if img_path == None:
                    break
                    
                while len(self.img_list) > 0:
                    img_data = self.img_list(0)
                    image = bytearray_to_qimage(img_data('bytes'))
                    self.imgLoaded.emit(img_data('path'), image)
                    self.img_list.pop(0)
                    
            print('Signal emitter shutting down.')
            
    @staticmethod
    def _worker(work_queue, done_queue, list):
        while True:
            path = work_queue.get()
            if path == None:
                break
            
            qimg = QtGui.QImage(path)
            img_dict = {
                'bytes': qimage_to_bytearray(qimg),
                'path': path
            }
            
            list.append(img_dict)
            done_queue.put(path)
            
        print("BG Proc shutting down.")
        return
        
def qimage_to_bytearray(qimage):
    byte_array = QtCore.QByteArray()
    stream = QtCore.QDataStream(byte_array, QtCore.QIODevice.WriteOnly)
    stream << qimage
    return byte_array

def bytearray_to_qimage(byte_array):
    img = QtGui.QImage()
    stream = QtCore.QDataStream(byte_array, QtCore.QIODevice.ReadOnly)
    stream >> img
    return img

applications – Disable autostart on boot and restrict background execution

Without getting into the details whether or not one should stop autostarting apps, and what could be the consequences as discussed in a plenty of other answers, here are my simple solutions which may work without any third party apps, at least on Android Pie.

ROOT SOLUTION:

Apps use BroadcastRceivers to listen for broadcast ACTION_BOOT_COMPLETED so that they can run on boot. Broadcast receiver is an app component that can be disabled with root privileges.

Using Package Manager list all broadcast receivers listening for BOOT_COMPLETED:

~# pm query-receivers --components -a android.intent.action.BOOT_COMPLETED

It will give a list of broadcast receivers in format package_name/component_name. See dumpsys activity broadcast-stats and dumpsys activity broadcasts for more details.

Now to disable a component:

~# pm disable <package/component>

There are apps like Autostarts (com.elsdoerfer.android.autostarts) and SD Maid (eu.thedarken.sdm) which can do same for you. File /data/system/users/0/package-restrictions.xml can also be edited directly to disable apps or their components, but it’s not recommended.
It’s possible to disable multiple broadcast receivers of an app, and a single receiver can also possibly listen to multiple types of broadcast events.

NON-ROOT SOLUTION: (non-universal)

In order to receive android.intent.action.BOOT_COMPLETED, apps need android.permission.RECEIVE_BOOT_COMPLETED which is a normal permission and hence can’t be revoked by user.

However there is a hidden permission management framework, named AppOps that provides a slightly more fine-grained control of (permission-like) operations. OP_BOOT_COMPLETED is one of those but it’s not a part of AOSP, only added by some custom ROMs like LineageOS. If you are on one of such ROMs, you can control the autostart behavior through adb shell:

~$ appops set <package> BOOT_COMPLETED deny

Now the app won’t be allowed to receive BOOT_COMPLETED broadcast. There are apps like App Ops (rikka.appops) which can do same for you. Some custom ROMs have built-in front-ends to AppOps with different names like Privacy Guard, AutoStart Manager etc.

Please note that AppOps:

is not generally intended for third party application developers; most features are only available to system applications

So its usage without root may be disallowed or get harder in next Android releases.


Both of the above methods can stop apps from starting on boot only. An app can listen for some other broadcast events too and it can keep on restarting if killed, or run in background continuously (as a service) if it’s designed to be so. See dumpsys activity services for more details.

A slightly different approach would be to stop apps from running in background by using OP_RUN_IN_BACKGROUND (introduced in Nougat) and/or RUN_ANY_IN_BACKGROUND (introduced in Pie) which are part of AOSP:

~$ appops set <package> RUN_IN_BACKGROUND deny

They don’t have an equivalent manifest permission, but there is an experimental permission with same name.

html – Não consigo fazer uma img cobrir o background de forma que ocupe somente o espaço da tela, e não o total da imagem

Estou tentando fazer uma imagem caber dentro do background, a solução que eu imaginei foi colocar no background do body, e dar um z-index pra ela ficar atrás do conteudo, porém a imagem não esta se ajustando, ja tentei usar background-size e nada, tentei por a imagem em uma div fora do background, e nada.

Aqui é como está agora no site : Foto do Site

#body {
    background: no-repeat;
    background-image: url(Logos/painel-campo-de-futebol-festa-futebol.jpg)  !important;
    background-size: cover !important;
    z-index: -1 !important;

}

Esse é meu body dentro do HTML :

<body id="body" class="preload">
    <nav class="navbar navbar-expand-lg navbar-light bg-light" id="navbar">
        <a class="navbar-brand" href="https://pt.stackoverflow.com/#">
            <img src="logo.jpg" width="100" height="100" alt="">
        </a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
          <span class="navbar-toggler-icon"></span>
        </button>
      
        <div class="collapse navbar-collapse" id="navbarSupportedContent">
          <ul class="navbar-nav mr-auto">
            <li class="nav-item active">
                <!-- <a class="nav-link" href="https://pt.stackoverflow.com/#">Home <span class="sr-only">(current)</span></a> Caso seja necessário, inserir um novo link-->
            </li>
            <li class="nav-item">
              <a class="nav-link" href="https://pt.stackoverflow.com/#">Link</a>
            </li>
            <li class="nav-item dropdown">
              <a class="nav-link dropdown-toggle" href="https://pt.stackoverflow.com/#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                Camisas
              </a>
              <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                <a class="dropdown-item" href="Camisas Campeonato Espanhol.html">Camisas Campeonato Espanhol</a>
                <a class="dropdown-item" href="Camisas Campeonato Italiano.html">Camisas Campeonato Italiano</a>
                <div class="dropdown-divider"></div>
                <a class="dropdown-item" href="https://pt.stackoverflow.com/#">Fodase</a>
              </div>
            </li>
            <li class="nav-item">
              <a class="nav-link" href="https://pt.stackoverflow.com/#">Link</a>
            </li>
          </ul>
          <form class="form-inline my-2 my-lg-0">
            <input class="form-control mr-sm-2" type="search" placeholder="Busque por produtos" aria-label="Search">
            <button type="button" class="btn btn-warning">Pesquisa</button> 
        </div>
      </nav>
      
      <div class="container">
        <img src="TIMES/La Liga - Campeonato Espanhol/Barcelona/fa42f8bf-6efa-4fb3-83c4-8dacd365e292.jfif" class="imgeditor"  alt="">
        <img src="TIMES/La Liga - Campeonato Espanhol/Barcelona/95cf6501-8e7b-41a7-b901-da03de0f27bc.jfif" class="imgeditor" alt="">
          <div class="backeditor">
          <p> Camisa Barcelona</p>
          <p>Valor : R$ 100,00</p>
          <p>Temos tamanhos : GG, G, M E P</p>
          </div>
      </div>

E essa é a imagem original : Foto original

Meu intuito é fazer com que ela se ajuste pra caber a imagem toda, porém dentro do body no background, como eu faço?

android – Cambiar background en tiempo de ejecucion

Lo que quiero es cambiar el background de un FrameLayout en tiempo de ejecucion.

Tengo la direccion url de la imagen y su nombre que esta en mi Storage de Firebase

 gmhistoriasurl = "la url de la fotos"
 layoutdatos.setBackground(gmhistoriasurl); 

Pero me sale subrayado en rojo gmhistoriasurl

¿ Como lo puedo hacer para cambiarlo?

Gracias.

i will create Adobe photoshop editing and image retouching any manipulation for $3

i will create Adobe photoshop editing and image retouching any manipulation

Welcome to Land my page and Service . I have More than 6 YEARS of Photoshop experience, Great communication and customer satisfaction.I am

here to work on your photo to make it just complete as per the

requirements.

I am excited to offer you my services and Adobe Photoshop your images to make them out-of-this-world Beautiful and

Graceful.The Best Quick & Fastest Photoshop Editing Service Ever.

A Professional Photoshop Editor at your service.

  • Image Background Removal/ Transparent
  • Brochures Wedding Photography Touch Ups


Why Hire Me For This Services?

  1. 24 Hours Service
  2. Fast and friendly customer service
  3. 06+ years of experience in Photoshop
  4. 100% refund if not satisfied
  5. Any Photoshop Editing, or Graphic designing Retouching, Manipulation gig will handle professionally Redesign
  6. Unlimited Revisions on all gigs

Please Contact me Before and place an Order or Tex Message me

.

dnd 5e – Do I, as a druid, add the spells from the Gruul Anarch background to my list of spells that I can prepare anytime?

Guild spells are added to your class’s spell list.

The rules for Gruul Guild Spells state:

For you, the spells on the Gruul Guild Spells table are added to the spell list of your spellcasting class.

And the druid’s spell preparation rules state:

You prepare the list of druid spells that are available for you to cast, choosing from the druid spell list.

Since as a druid your guild spells are added to the druid spell list, you can prepare them as a druid.

Black Desktop Background – Windows 10

I’ve had this problem since my last build. I’ve got all new parts aside from my psu. I thought it was my gpu that was causing the issue but I swapped to an AMD temporarily and it still happens. My background will go black and I can get it back by restarting Windows Explorer, but that’s a hassle for as often as it happens. It used to freeze in my old build but I haven’t seen that happen yet, with this new GPU. Any ideas?

Remove black background from copied and paste text in google docs

I have a weird black background from a text I copied and paste. Do you know how I can remove it?

enter image description here

I already tried something in Page setup …